Skip to content

Commit

Permalink
test for expansion concept mappings api
Browse files Browse the repository at this point in the history
  • Loading branch information
snyaggarwal committed Apr 1, 2022
1 parent 5c639d4 commit 42d7c84
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions core/integration_tests/tests_collections.py
Original file line number Diff line number Diff line change
Expand Up @@ -1572,6 +1572,24 @@ def test_post_200(self):
self.assertFalse('result' in unknown_resolution)


response = self.client.post(
'/$resolveReference/',
'/orgs/foobar/',
HTTP_AUTHORIZATION='Token ' + token,
format='json'
)

self.assertEqual(response.status_code, 200)
self.assertEqual(len(response.data), 1)

unknown_resolution = response.data[0]
self.assertFalse(unknown_resolution['resolved'])
self.assertIsNotNone(unknown_resolution['timestamp'])
self.assertEqual(unknown_resolution['resolution_url'], '/orgs/foobar/')
self.assertEqual(unknown_resolution['request'], '/orgs/foobar/')
self.assertFalse('result' in unknown_resolution)


class CollectionVersionExpansionMappingRetrieveViewTest(OCLAPITestCase):
def test_get_200(self):
collection = OrganizationCollectionFactory()
Expand Down Expand Up @@ -1602,3 +1620,42 @@ def test_get_200(self):
self.assertEqual(response.status_code, 200)
self.assertEqual(response.data['id'], str(concept.mnemonic))
self.assertEqual(response.data['type'], 'Concept')


class CollectionVersionExpansionConceptMappingsViewTest(OCLAPITestCase):
def test_get_200(self):
org = OrganizationFactory()
source = OrganizationSourceFactory(organization=org)
collection = OrganizationCollectionFactory(organization=org)
expansion = ExpansionFactory(collection_version=collection)
concept = ConceptFactory(parent=source)
mapping = MappingFactory(from_concept=concept, parent=source)
mapping2 = MappingFactory(from_concept=concept) # random owner/parent
reference = CollectionReference(expression=concept.url, collection=collection)
reference.save()
expansion.concepts.add(concept)
reference.concepts.add(concept)

response = self.client.get(expansion.url + f'concepts/{concept.mnemonic}/mappings/?brief=true')

self.assertEqual(response.status_code, 200)
self.assertEqual(len(response.data), 0)

expansion.mappings.add(mapping2)

response = self.client.get(expansion.url + f'concepts/{concept.mnemonic}/mappings/?brief=true')

self.assertEqual(response.status_code, 200)
self.assertEqual(len(response.data), 1)
self.assertEqual(response.data[0]['url'], mapping2.url)

expansion.mappings.add(mapping)

response = self.client.get(expansion.url + f'concepts/{concept.mnemonic}/mappings/?brief=true')

self.assertEqual(response.status_code, 200)
self.assertEqual(len(response.data), 2)
self.assertEqual(
sorted([data['url'] for data in response.data]),
sorted([mapping.url, mapping2.url])
)

0 comments on commit 42d7c84

Please sign in to comment.