do not write -invalid- empty table row when form has no buttons
""":organization: Logilab:copyright: 2001-2009 LOGILAB S.A. (Paris, FRANCE), license is LGPL v2.:contact: http://www.logilab.fr/ -- mailto:contact@logilab.fr:license: GNU Lesser General Public License, v2.1 - http://www.gnu.org/licenses"""fromcubicwebimportConnectionErrorfromcubicweb.dbapiimportProgrammingErrorfromcubicweb.devtools.apptestimportEnvBasedTCclassDBAPITC(EnvBasedTC):@propertydefcnx(self):returnself.login('anon')deftest_public_repo_api(self):cnx=self.cnxself.assertEquals(cnx.get_schema(),self.env.repo.schema)self.assertEquals(cnx.source_defs(),{'system':{'adapter':'native','uri':'system'}})self.restore_connection()# proper way to close cnxself.assertRaises(ProgrammingError,cnx.get_schema)self.assertRaises(ProgrammingError,cnx.source_defs)deftest_db_api(self):cnx=self.cnxself.assertEquals(cnx.rollback(),None)self.assertEquals(cnx.commit(),None)self.restore_connection()# proper way to close cnx#self.assertEquals(cnx.close(), None)self.assertRaises(ProgrammingError,cnx.rollback)self.assertRaises(ProgrammingError,cnx.commit)self.assertRaises(ProgrammingError,cnx.close)deftest_api(self):cnx=self.cnxself.assertEquals(cnx.user(None).login,'anon')self.assertEquals(cnx.describe(1),(u'CWGroup',u'system',None))self.restore_connection()# proper way to close cnxself.assertRaises(ConnectionError,cnx.user,None)self.assertRaises(ConnectionError,cnx.describe,1)deftest_session_data_api(self):cnx=self.cnxself.assertEquals(cnx.get_session_data('data'),None)self.assertEquals(cnx.session_data(),{})cnx.set_session_data('data',4)self.assertEquals(cnx.get_session_data('data'),4)self.assertEquals(cnx.session_data(),{'data':4})cnx.del_session_data('data')cnx.del_session_data('whatever')self.assertEquals(cnx.get_session_data('data'),None)self.assertEquals(cnx.session_data(),{})cnx.session_data()['data']=4self.assertEquals(cnx.get_session_data('data'),4)self.assertEquals(cnx.session_data(),{'data':4})deftest_shared_data_api(self):cnx=self.cnxself.assertEquals(cnx.get_shared_data('data'),None)cnx.set_shared_data('data',4)self.assertEquals(cnx.get_shared_data('data'),4)cnx.get_shared_data('data',pop=True)cnx.get_shared_data('whatever',pop=True)self.assertEquals(cnx.get_shared_data('data'),None)cnx.set_shared_data('data',4)self.assertEquals(cnx.get_shared_data('data'),4)self.restore_connection()# proper way to close cnxself.assertRaises(ConnectionError,cnx.check)self.assertRaises(ConnectionError,cnx.set_shared_data,'data',0)self.assertRaises(ConnectionError,cnx.get_shared_data,'data')# class DBAPICursorTC(EnvBasedTC):# @property# def cursor(self):# return self.env.cnx.cursor()# def test_api(self):# cu = self.cursor# self.assertEquals(cu.describe(1), (u'CWGroup', u'system', None))# #cu.close()# #self.assertRaises(ConnectionError, cu.describe, 1)if__name__=='__main__':fromlogilab.common.testlibimportunittest_mainunittest_main()