def testPostCreatesLock(self): file_path = os.path.join(os.path.dirname(__file__), "data", "meta.xml") with open(file_path, "rb") as f: xml_data = f.read() doc_id, errors = post_from_settings(xml_data) xform = CXFormInstance.get(doc_id) self.assertTrue(xform.is_locked())
def testClosed(self): file_path = os.path.join(os.path.dirname(__file__), "data", "meta.xml") with open(file_path, "rb") as f: xml_data = f.read() doc_id, errors = post_from_settings(xml_data) xform = CXFormInstance.get(doc_id) self.assertNotEqual(None, xform.metadata) self.assertEqual("5020280", xform.metadata.clinic_id) self.assertEqual(date(2010,07,22), xform.metadata.time_start.date()) self.assertEqual(date(2010,07,23), xform.metadata.time_end.date()) self.assertEqual("admin", xform.metadata.username) self.assertEqual("f7f0c79e-8b79-11df-b7de-005056c00008", xform.metadata.user_id)
def replace_ids_and_post(xml_data, case_id_override=None, referral_id_override=None): # from our test forms, replace the UIDs so we don't get id conflicts uid, case_id, ref_id = (uuid.uuid4().hex for i in range(3)) if case_id_override: case_id = case_id_override if referral_id_override: ref_id = referral_id_override xml_data = xml_data.replace("REPLACE_UID", uid) xml_data = xml_data.replace("REPLACE_CASEID", case_id) xml_data = xml_data.replace("REPLACE_REFID", ref_id) doc_id, errors = post_from_settings(xml_data) if errors: raise Exception("Couldn't post! %s" % errors) elif "error" in doc_id: raise Exception("Problem with couch! %s" % doc_id) return (doc_id, uid, case_id, ref_id)