def testSaveFormData_6(self): """ Test nested repeated form definition created and data saved """ create_xsd_and_populate("6_nestedrepeats.xsd", "6_nestedrepeats.xml", self.domain) cursor = connection.cursor() cursor.execute("SELECT * FROM schema_basicdomain_xml_nestedrepeats") row = cursor.fetchone() self.assertEquals(row[9],"foo") self.assertEquals(row[10],"bar") self.assertEquals(row[11],"yes") self.assertEquals(row[12],"no") cursor.execute("SELECT * FROM schema_basicdomain_xml_nestedrepeats_root_nested") row = cursor.fetchall() self.assertEquals(row[0][1],"userid0") self.assertEquals(row[0][2],"deviceid0") if is_configured_realsql(): self.assertEquals(row[0][3],datetime(2009,10,9,11,4,30) ) self.assertEquals(row[0][4],datetime(2009,10,9,11,9,30) ) else: self.assertEquals(row[0][3],"2009-10-9 11:04:30" ) self.assertEquals(row[0][4],"2009-10-9 11:09:30" ) self.assertEquals(row[0][5],1) self.assertEquals(row[1][1],"userid2") self.assertEquals(row[1][2],"deviceid2") if is_configured_realsql(): self.assertEquals(row[1][3],datetime(2009,11,12,11,11,11) ) self.assertEquals(row[1][4],datetime(2009,11,12,11,16,11) ) else: self.assertEquals(row[1][3],"2009-11-12 11:11:11" ) self.assertEquals(row[1][4],"2009-11-12 11:16:11" ) self.assertEquals(row[1][5],1)
def testSaveFormData_2(self): """ Test types created and data saved. Currently only supported in MYSQL. """ cursor = connection.cursor() create_xsd_and_populate("2_types.xsd", "2_types.xml", self.domain) if is_configured_mysql(): cursor.execute("DESCRIBE schema_basicdomain_xml_types") row = cursor.fetchall() self.assertEquals(row[9][1],"varchar(255)") self.assertEquals(row[10][1],"int(11)") self.assertEquals(row[11][1],"int(11)") self.assertEquals(row[12][1],"decimal(5,2)") self.assertEquals(row[13][1],"double") self.assertEquals(row[14][1],"date") self.assertEquals(row[15][1],"time") self.assertEquals(row[16][1],"datetime") self.assertEquals(row[17][1],"tinyint(1)") self.assertEquals(row[18][1],"tinyint(1)") else: pass cursor.execute("SELECT * FROM schema_basicdomain_xml_types") row = cursor.fetchone() self.assertEquals(row[9],"userid0") self.assertEquals(row[10],111) self.assertEquals(row[11],222) if is_configured_realsql(): self.assertEquals(row[12],Decimal("3.20")) else: self.assertEquals( str(float(row[8])), "3.2" ) self.assertEquals(row[13],2002.09) if is_configured_realsql(): self.assertEquals(row[14],date(2002,9,24) ) self.assertEquals(row[15],time(12,24,48)) self.assertEquals(row[16],datetime(2007,12,31,23,59,59) ) else: self.assertEquals(row[14],"2002-09-24" ) self.assertEquals(row[15],"12:24:48") self.assertEquals(row[16],"2007-12-31 23:59:59" ) self.assertEquals(row[17],None ) self.assertEquals(row[18],None ) self.assertEquals(row[19],1 ) self.assertEquals(row[20],None ) self.assertEquals(row[21],1 ) self.assertEquals(row[22],None ) self.assertEquals(row[23],1 ) self.assertEquals(row[24],1 ) self.assertEquals(row[25],None ) self.assertEquals(row[26],None ) self.assertEquals(row[27],None ) self.assertEquals(row[28],None )
def testSaveFormData_9(self): """ Test nested repeated form definition created and data saved """ formdefmodel = create_xsd_and_populate("6_nestedrepeats.xsd", "6_nestedrepeats.xml", self.domain) formdefmodel_2 = create_xsd_and_populate("data/9_nestedrepeats_2.xsd", "data/9_nestedrepeats_2.xml", self.domain) formdefmodel_3 = create_xsd_and_populate("data/9_nestedrepeats_3.xsd", "data/9_nestedrepeats_3.xml", self.domain) formdefmodel_4 = create_xsd_and_populate("data/9_nestedrepeats_4.xsd", "data/9_nestedrepeats_4.xml", self.domain) try: # add checks for metadata.uiversion, version for i in (2,3,4): cursor = connection.cursor() cursor.execute("SELECT * FROM schema_versioneddomain_xml_nestedrepeats_%s" % i) row = cursor.fetchone() self.assertEquals(row[9],"foo") self.assertEquals(row[10],"bar") self.assertEquals(row[11],"yes") self.assertEquals(row[12],"no") cursor.execute("SELECT * FROM schema_versioneddomain_xml_nestedrepeats_root_nested_%s" % i) row = cursor.fetchall() self.assertEquals(row[0][1],"userid0") self.assertEquals(row[0][2],"deviceid0") if is_configured_realsql(): self.assertEquals(row[0][3],datetime(2009,10,9,11,4,30) ) self.assertEquals(row[0][4],datetime(2009,10,9,11,9,30) ) else: self.assertEquals(row[0][3],"2009-10-9 11:04:30" ) self.assertEquals(row[0][4],"2009-10-9 11:09:30" ) self.assertEquals(row[0][5],1) self.assertEquals(row[1][1],"userid2") self.assertEquals(row[1][2],"deviceid2") if is_configured_realsql(): self.assertEquals(row[1][3],datetime(2009,11,12,11,11,11) ) self.assertEquals(row[1][4],datetime(2009,11,12,11,16,11) ) else: self.assertEquals(row[1][3],"2009-11-12 11:11:11" ) self.assertEquals(row[1][4],"2009-11-12 11:16:11" ) self.assertEquals(row[1][5],1) finally: manager = XFormManager() manager.remove_schema(formdefmodel.id) manager.remove_schema(formdefmodel_2.id) manager.remove_schema(formdefmodel_3.id) manager.remove_schema(formdefmodel_4.id)