[Greater-commits] r291 - trunk/GREAT-ER-DB/impl/postgresql/test
scm-commit@wald.intevation.org
scm-commit at wald.intevation.org
Tue Jun 28 12:49:06 CEST 2011
Author: bricks
Date: 2011-06-28 12:49:06 +0200 (Tue, 28 Jun 2011)
New Revision: 291
Modified:
trunk/GREAT-ER-DB/impl/postgresql/test/test_pg_q_temp_sess.py
Log:
Update temporary session unit tests and improve them
Modified: trunk/GREAT-ER-DB/impl/postgresql/test/test_pg_q_temp_sess.py
===================================================================
--- trunk/GREAT-ER-DB/impl/postgresql/test/test_pg_q_temp_sess.py 2011-06-28 10:44:51 UTC (rev 290)
+++ trunk/GREAT-ER-DB/impl/postgresql/test/test_pg_q_temp_sess.py 2011-06-28 10:49:06 UTC (rev 291)
@@ -50,51 +50,79 @@
# if you do individual tests, you have to adjust the sess_id's, because there
# is only 1 sess in the db (inserted by the insert.sql). the id da_create_temp_sess()
# returns will be 102 and not 103.
- self.res = da_create_temp_sess(101,'Y')
+ res = da_get_sess(101, 'N')
+ self.assertEquals(len(res), 1, "Session 101 not found")
+ res = da_get_sess(-1, '%');
+ self.assertEquals(len(res), 1, "Only one session should be available")
+ res = da_get_sess(-1, "N");
+ self.assertEquals(len(res), 1, "Only one permanent session should be available")
+ res = da_get_sess(-1, "Y");
+ self.assertEquals(len(res), 0, "No temp session should be available")
+ res = da_create_temp_sess(101, 'Y')
da_db_commit()
- self.assertNotEquals(self.res,0)
+ self.assertNotEquals(res, 0, "Could not create temp session")
+ res = da_get_sess(-1, '%');
+ self.assertEquals(len(res), 2, "Two sessions should be available")
+ res = da_get_sess(-1, "N");
+ self.assertEquals(len(res), 1, "Only one permanent session should be available")
+ res = da_get_sess(-1, "Y");
+ self.assertEquals(len(res), 1, "Onyl one temp session should be available")
def test_1_make_temp_sess_permanent(self):
- self.res = da_get_sess(101,'N')
- self.assertNotEquals(len(self.res),0)
- self.res = da_get_sess(103,'Y')
- self.assertNotEquals(len(self.res),0)
- self.res = da_make_temp_sess_permanent(103)
+ res = da_get_sess(101, 'N')
+ self.assertEquals(len(res), 1, "Session 101 not found")
+ res = da_get_sess(103, 'Y')
+ self.assertEquals(len(res), 0)
+ res = da_create_temp_sess(101, 'Y')
+ self.assertNotEquals(res, 0, "Could not create temp session")
+ temp_sess_id = res
+ res = da_make_temp_sess_permanent(temp_sess_id)
da_db_commit()
- self.res = da_get_sess(101,'N')
- self.assertEquals(len(self.res),0)
- self.res = da_get_sess(103,'Y')
- self.assertEquals(len(self.res),0)
+ res = da_get_sess(temp_sess_id, 'N')
+ self.assertEquals(len(res), 1, "Could not find new permanent session")
+ res = da_get_sess(101, 'N')
+ self.assertEquals(len(res), 0, "Source session isn't deleted")
+ res = da_get_sess(103, 'Y')
+ self.assertEquals(len(res), 0, "No temp session should be avaliable")
+ res = da_get_sess(-1, '%');
+ self.assertEquals(len(res), 1, "Only one session should be available")
def test_2_get_temp_sess(self):
- self.res = da_get_sess(101,'Y')
- self.assertEquals(len(self.res),0)
- self.res = da_get_sess(101,'N')
- self.assertEquals(len(self.res),0)
- self.res = da_get_sess(103,'N')
- self.assertNotEquals(len(self.res),0)
- self.res = da_get_sess(103,'Y')
- self.assertEquals(len(self.res),0)
+ res = da_get_sess(-1, "Y");
+ self.assertEquals(len(res), 0, "No temp session should be available")
+ res = da_create_temp_sess(101, 'Y')
+ da_db_commit()
+ self.assertNotEquals(res, 0, "Could not create temp session")
+ res = da_get_sess(101, 'Y')
+ self.assertEquals(len(res), 0, "101 should not be a temp session")
+ res = da_get_sess(101, 'N')
+ self.assertEquals(len(res), 1, "101 should be a perm session")
+ res = da_get_sess(102,'N')
+ self.assertEquals(len(res), 0, "102 should not be a perm session")
+ res = da_get_sess(102,'Y')
+ self.assertEquals(len(res), 1, "102 shoul be a temp session")
def test_3_cleanup_temp_sess(self):
- self.res = da_create_temp_sess(103,'Y')
- self.res = da_get_sess(104,'Y')
- self.assertNotEquals(self.res,0)
- # there is no chance to test the cleanup function,
- # because the condition for deleting is that
- # the sess. has to be older than 7 days (current_timestamp - mod_date > 7).
- #
- # update one temp. session's mod_date -> it will be cleaned up.
- # possibility: sql-script
- # right now, the sess 104 won't be cleaned up, because its mod_date
- # is exactly current_timestamp.
- self.res = da_cleanup_temp_sess()
+ res = da_create_temp_sess(101,'Y')
da_db_commit()
- self.res = da_get_sess(104,'Y')
- self.assertEquals(len(self.res),0)
+ res = da_get_sess(102,'Y')
+ self.assertNotEquals(res, 0)
+ affected = self.server.execute_sql("static_db", "admin", "UPDATE SESS_TAB SET"\
+ " MOD_DATE = (CURRENT_TIMESTAMP - interval "\
+ "'8 days') WHERE SESS_ID = '102'")
+ self.assertEquals(affected, 1, "Could not set mod_date of temp session")
+ res = da_cleanup_temp_sess()
+ da_db_commit()
+ res = da_get_sess(102, 'Y')
+ self.assertEquals(len(res), 0)
+ res = da_get_sess(102, 'N')
+ self.assertEquals(len(res), 0)
+ res = da_get_sess(-1, "%")
+ self.assertEquals(len(res), 1, "Only one session should be available")
def tearDown(self):
da_db_disconnect()
+ postgressupport.shutdown_test_server()
if __name__ == "__main__":
support.run_tests()
More information about the Greater-commits
mailing list