Beispiel #1
0
 def version_added_message_by_type(self, resource_name, collection_name,
                                   resource_type):
     if resource_type == 'concepts':
         return CONCEPT_ADDED_TO_COLLECTION_FMT.format(
             resource_name, collection_name)
     return MAPPING_ADDED_TO_COLLECTION_FMT.format(resource_name,
                                                   collection_name)
    def test_add_concept_with_version_information_should_return_success_info_and_same_references(
            self):
        source_with_open_mrs, user = self.create_source_and_user_fixture()
        (concept, errors) = create_concept(mnemonic='concept12',
                                           user=user,
                                           source=source_with_open_mrs)
        collection = create_collection(user, CUSTOM_VALIDATION_SCHEMA_OPENMRS)
        data = json.dumps(
            {'data': {
                'expressions': [concept.get_latest_version.url]
            }})

        kwargs = {'user': user.username, 'collection': collection.name}
        response = self.client.put(reverse('collection-references',
                                           kwargs=kwargs),
                                   data,
                                   content_type='application/json')
        updated_collection = Collection.objects.get(mnemonic=collection.name)

        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertEquals(response.data, [{
            'added':
            True,
            'expression':
            updated_collection.current_references()[0],
            'message':
            CONCEPT_ADDED_TO_COLLECTION_FMT.format(concept.mnemonic,
                                                   collection.name)
        }])
    def test_add_resources_with_api_should_return_info_and_versioned_references(
            self):
        source_with_open_mrs, user = self.create_source_and_user_fixture()
        (concept_one, errors) = create_concept(mnemonic='conceptTwo',
                                               user=user,
                                               source=source_with_open_mrs)
        (concept_two, errors) = create_concept(mnemonic='conceptOne',
                                               user=user,
                                               source=source_with_open_mrs)
        mapping = create_mapping(user, source_with_open_mrs, concept_one,
                                 concept_two)
        collection = create_collection(user, CUSTOM_VALIDATION_SCHEMA_OPENMRS)
        data = json.dumps({
            'data': {
                'expressions': [
                    concept_one.url, concept_two.get_latest_version.url,
                    mapping.url
                ]
            }
        })

        kwargs = {'user': user.username, 'collection': collection.name}
        response = self.client.put(reverse('collection-references',
                                           kwargs=kwargs),
                                   data,
                                   content_type='application/json')

        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertItemsEqual(
            response.data, [{
                'added': True,
                'expression': concept_one.get_latest_version.url,
                'message': HEAD_OF_CONCEPT_ADDED_TO_COLLECTION
            }, {
                'added':
                True,
                'expression':
                concept_two.get_latest_version.url,
                'message':
                CONCEPT_ADDED_TO_COLLECTION_FMT.format(concept_two.mnemonic,
                                                       collection.name)
            }, {
                'added': True,
                'expression': mapping.get_latest_version.url,
                'message': HEAD_OF_MAPPING_ADDED_TO_COLLECTION
            }])
Beispiel #4
0
    def test_add_concept_with_version_information_should_return_success_info_and_same_references(self):
        source_with_open_mrs, user = self.create_source_and_user_fixture()
        (concept, errors) = create_concept(mnemonic='concept12', user=user, source=source_with_open_mrs)
        collection = create_collection(user, CUSTOM_VALIDATION_SCHEMA_OPENMRS)
        data = json.dumps({
            'data': {
                'expressions': [concept.get_latest_version.url]
            }
        })

        kwargs = {'user': user.username, 'collection': collection.name}
        response = self.client.put(reverse('collection-references', kwargs=kwargs), data,
                                   content_type='application/json')
        updated_collection = Collection.objects.get(mnemonic=collection.name)

        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertEquals(response.data,
                          [{'added': True, 'expression': updated_collection.current_references()[0],
                            'message': CONCEPT_ADDED_TO_COLLECTION_FMT.format(concept.mnemonic, collection.name)}])
Beispiel #5
0
    def test_add_resources_with_api_should_return_info_and_versioned_references(self):
        source_with_open_mrs, user = self.create_source_and_user_fixture()
        (concept_one, errors) = create_concept(mnemonic='conceptTwo', user=user, source=source_with_open_mrs)
        (concept_two, errors) = create_concept(mnemonic='conceptOne', user=user, source=source_with_open_mrs)
        mapping = create_mapping(user, source_with_open_mrs, concept_one, concept_two)
        collection = create_collection(user, CUSTOM_VALIDATION_SCHEMA_OPENMRS)
        data = json.dumps({
            'data': {
                'expressions': [concept_one.url, concept_two.get_latest_version.url, mapping.url]
            }
        })

        kwargs = {'user': user.username, 'collection': collection.name}
        response = self.client.put(reverse('collection-references', kwargs=kwargs), data,
                                   content_type='application/json')

        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertEquals(response.data,
                          [{'added': True, 'expression': concept_one.get_latest_version.url,
                            'message': HEAD_OF_CONCEPT_ADDED_TO_COLLECTION},
                           {'added': True, 'expression': concept_two.get_latest_version.url,
                            'message': CONCEPT_ADDED_TO_COLLECTION_FMT.format(concept_two.mnemonic, collection.name)},
                           {'added': True, 'expression': mapping.get_latest_version.url,
                            'message': HEAD_OF_MAPPING_ADDED_TO_COLLECTION}])
Beispiel #6
0
 def version_added_message_by_type(self, resource_name, collection_name, resource_type):
     if resource_type == 'concepts':
         return CONCEPT_ADDED_TO_COLLECTION_FMT.format(resource_name, collection_name)
     return MAPPING_ADDED_TO_COLLECTION_FMT.format(resource_name, collection_name)