def test_post_copy_vocab(self): self.assertFalse(RecordVocab.exists(self.testcoll, "copyvocab")) f = vocab_view_form_data( vocab_id="copyvocab", orig_id="annal", orig_coll="_annalist_site", action="copy", update="RecordVocab", vocab_uri=" test:copyvocab " # Tests space stripping ) u = entitydata_edit_url("copy", "testcoll", layout.VOCAB_TYPEID, entity_id="annal", view_id="Vocab_view") r = self.client.post(u, f) self.assertEqual(r.status_code, 302) self.assertEqual(r.reason_phrase, "FOUND") self.assertEqual(r.content, "") self.assertEqual(r['location'], self.continuation_url) # Check that new record type exists self._check_record_vocab_values("copyvocab", update="RecordVocab", vocab_uri="test:copyvocab") return
def test_post_edit_vocab_invalid_id(self): self._create_record_vocab("editvocab") self._check_record_vocab_values("editvocab") # Form post with invalid ID f = vocab_view_form_data(vocab_id="!badvocab", orig_id="editvocab", action="edit", update="Updated RecordVocab") u = entitydata_edit_url("edit", "testcoll", layout.VOCAB_TYPEID, entity_id="editvocab", view_id="Vocab_view") r = self.client.post(u, f) self.assertEqual(r.status_code, 200) self.assertEqual(r.reason_phrase, "OK") self.assertContains(r, "<h3>%s</h3>" % (message.RECORD_VOCAB_ID)) # Test context self._check_context_fields(r, action="edit", vocab_id="!badvocab", orig_vocab_id="editvocab", update="Updated RecordVocab") # Check original data is unchanged self._check_record_vocab_values("editvocab") return
def test_post_new_vocab_cancel(self): self.assertFalse(RecordVocab.exists(self.testcoll, "newvocab")) f = vocab_view_form_data(vocab_id="newvocab", action="new", cancel="Cancel", update="Updated RecordVocab") u = entitydata_edit_url("new", "testcoll", layout.VOCAB_TYPEID, view_id="Vocab_view") r = self.client.post(u, f) self.assertEqual(r.status_code, 302) self.assertEqual(r.reason_phrase, "FOUND") self.assertEqual(r.content, "") self.assertEqual(r['location'], self.continuation_url) # Check that new record type still does not exist self.assertFalse(RecordVocab.exists(self.testcoll, "newvocab")) return
def test_post_edit_vocab_cancel(self): self._create_record_vocab("editvocab") self._check_record_vocab_values("editvocab") f = vocab_view_form_data(vocab_id="editvocab", orig_id="editvocab", action="edit", cancel="Cancel", update="Updated RecordVocab") u = entitydata_edit_url("edit", "testcoll", layout.VOCAB_TYPEID, entity_id="editvocab", view_id="Vocab_view") r = self.client.post(u, f) self.assertEqual(r.status_code, 302) self.assertEqual(r.reason_phrase, "FOUND") self.assertEqual(r.content, "") self.assertEqual(r['location'], self.continuation_url) # Check that target record type still does not exist and unchanged self._check_record_vocab_values("editvocab") return
def test_post_copy_vocab_missing_id(self): self._create_record_vocab("Default_vocab") f = vocab_view_form_data(action="copy", orig_id="Default_vocab", update="Updated RecordVocab") u = entitydata_edit_url("copy", "testcoll", layout.VOCAB_TYPEID, entity_id="Default_vocab", view_id="Vocab_view") r = self.client.post(u, f) self.assertEqual(r.status_code, 200) self.assertEqual(r.reason_phrase, "OK") self.assertContains(r, "<h3>%s</h3>" % (message.RECORD_VOCAB_ID)) # Test context self._check_context_fields(r, action="copy", vocab_id="", orig_vocab_id="Default_vocab", update="Updated RecordVocab") return
def test_post_new_vocab(self): self.assertFalse(RecordVocab.exists(self.testcoll, "newvocab")) f = vocab_view_form_data(vocab_id="newvocab", action="new", vocab_uri="test:newvocab", update="RecordVocab") u = entitydata_edit_url("new", "testcoll", layout.VOCAB_TYPEID, view_id="Vocab_view") r = self.client.post(u, f) # print r.content self.assertEqual(r.status_code, 302) self.assertEqual(r.reason_phrase, "FOUND") self.assertEqual(r.content, "") self.assertEqual(r['location'], self.continuation_url) # Check that new record type exists self._check_record_vocab_values("newvocab", update="RecordVocab", vocab_uri="test:newvocab") return
def test_post_new_vocab_missing_id(self): f = vocab_view_form_data(action="new", update="RecordVocab") u = entitydata_edit_url("new", "testcoll", layout.VOCAB_TYPEID, view_id="Vocab_view") r = self.client.post(u, f) # print r.content self.assertEqual(r.status_code, 200) self.assertEqual(r.reason_phrase, "OK") self.assertContains(r, "<h3>%s</h3>" % (message.RECORD_VOCAB_ID)) # Test context self._check_context_fields( r, action="new", vocab_id=None, orig_vocab_id="orig_vocab_id", vocab_label=None, vocab_descr=None, vocab_uri=None, ) return