def setUp(self): Range(label="range1", identifier="book1", name="range1", ATid="http://example.org/iiif/book1/range/range1").save() Range(label="range2", identifier="book1", name="range2", ATid="http://example.org/iiif/book1/range/range2").save() Range(label="range3", identifier="book1", name="range3", ATid="http://example.org/iiif/book1/range/range3").save()
def test_a_range_can_be_successfully_created_with_no_nested_structures( self): data = {"range": json.loads(open(RANGE_SHORT).read())} response = self.client.post(URL, data) if settings.QUEUE_POST_ENABLED: while self.client.get( response.data["status"] ).status_code != status.HTTP_301_MOVED_PERMANENTLY: pass # Wait till background process finishes response = self.client.get(response.data["status"]) self.assertEqual(response.data["responseCode"], status.HTTP_201_CREATED) self.assertEqual(Range.objects()[0].label, 'Table of Contents') self.assertEqual(Range.objects()[0].ATid, settings.IIIF_BASE_URL + "/book1/range/r0")
def test_a_range_can_be_updated_with_a_new_belongsTo_field_will_replace_existing_values( self): Range(label="p1", identifier="book1", name="r0", ATid="http://example.org/iiif/book1/range/r0", belongsTo=[settings.IIIF_BASE_URL + "/book1/manifest"]).save() self.assertEqual( Range.objects.get(identifier='book1', name="r0").belongsTo, [settings.IIIF_BASE_URL + "/book1/manifest"]) self.assertFalse("http://example.org/iiif/book2/manifest" in Range. objects.get(identifier='book1', name="r0").belongsTo) data = { "range": { "belongsTo": ["http://example.org/iiif/book2/manifest"] } } response = self.client.put('/book1/range/r0', data) if settings.QUEUE_PUT_ENABLED: while self.client.get( response.data["status"] ).status_code != status.HTTP_301_MOVED_PERMANENTLY: pass # Wait till background process finishes response = self.client.get(response.data["status"]) self.assertEqual(response.data["responseCode"], status.HTTP_200_OK) self.assertFalse(settings.IIIF_BASE_URL + "/book1/manifest" in Range.objects.get( identifier='book1', name="r0").belongsTo) self.assertTrue("http://example.org/iiif/book2/manifest" in Range. objects.get(identifier='book1', name="r0").belongsTo)
def setUp(self): self.user = User.create_user('testadmin', '*****@*****.**', 'testadminpass', True) jwt_payload_handler = api_settings.JWT_PAYLOAD_HANDLER jwt_encode_handler = api_settings.JWT_ENCODE_HANDLER payload = jwt_payload_handler(self.user) token = jwt_encode_handler(payload) self.client.credentials(HTTP_AUTHORIZATION='JWT ' + token) Range(label="range1", identifier="book1", name="range1", ATid="http://example.org/iiif/book1/range/range1").save() Range(label="range2", identifier="book1", name="range2", ATid="http://example.org/iiif/book1/range/range2").save()
def test_a_new_range_will_be_reated_from_a_POST_of_manifest(self): data = {"manifest": json.loads(open(MANIFEST_FULL).read())} response = self.client.post('/book1/manifest', data) if settings.QUEUE_POST_ENABLED: while self.client.get( response.data["status"] ).status_code != status.HTTP_301_MOVED_PERMANENTLY: pass # Wait till background process finishes response = self.client.get(response.data["status"]) self.assertEqual(response.data["responseCode"], status.HTTP_201_CREATED) self.assertEqual(len(Range.objects()), 4)
def test_a_range_with_no_id_given_can_be_successfully_created(self): data = {"range": json.loads(open(RANGE_SHORT).read())} del data["range"]["@id"] response = self.client.post("/identifier/range", data) if settings.QUEUE_POST_ENABLED: while self.client.get( response.data["status"] ).status_code != status.HTTP_301_MOVED_PERMANENTLY: pass # Wait till background process finishes response = self.client.get(response.data["status"]) self.assertEqual(response.data["responseCode"], status.HTTP_201_CREATED) self.assertEqual(Range.objects()[0].label, 'Table of Contents')
def test_a_range_can_be_successfully_created_with_one_level_nested_structures( self): data = {"range": json.loads(open(RANGE_MEDIUM).read())} response = self.client.post(URL, data) if settings.QUEUE_POST_ENABLED: while self.client.get( response.data["status"] ).status_code != status.HTTP_301_MOVED_PERMANENTLY: pass # Wait till background process finishes response = self.client.get(response.data["status"]) self.assertEqual(response.data["responseCode"], status.HTTP_201_CREATED) self.assertEqual(len(Range.objects()), 4) self.assertEqual(len(Canvas.objects()), 4) createdRangeID = settings.IIIF_BASE_URL + "/book1/range/r0" self.assertEqual( createdRangeID in Canvas.objects.get(identifier='book1', name='cover').belongsTo, True) self.assertEqual( createdRangeID in Canvas.objects.get(identifier='book1', name='backCover').belongsTo, True)
def setUp(self): Range(label="cool range", identifier="book1", name="range1", ATid="http://example.org/iiif/book1/range1").save() Range(label="not so cool range", identifier="book1", name="range2", ATid="http://example.org/iiif/book1/range2").save() Range(label="cool range", identifier="book2", name="range3", ATid="http://example.org/iiif/book2/range3").save() self.url = "/search/range/"