Exemple #1
0
    def setUp(self):
        super(ConceptVersionStaticMethodsTest, self).setUp()
        self.concept1 = Concept(mnemonic='concept1',
                                concept_class='First',
                                public_access=ACCESS_TYPE_EDIT)
        display_name = LocalizedText(name='concept1', locale='en')
        self.concept1.names.append(display_name)
        kwargs = {
            'parent_resource': self.source1,
        }
        Concept.persist_new(self.concept1, self.user1, **kwargs)
        initial_version = ConceptVersion.get_latest_version_of(self.concept1)

        self.concept2 = Concept(mnemonic='concept2',
                                concept_class='Second',
                                names=[self.name])
        kwargs = {
            'parent_resource': self.source2,
        }
        Concept.persist_new(self.concept2, self.user1, **kwargs)

        self.concept_version = ConceptVersion(
            mnemonic='version1',
            versioned_object=self.concept1,
            concept_class='First',
            names=self.concept1.names,
            previous_version=initial_version,
            created_by=self.user1.username,
            updated_by=self.user1.username,
            version_created_by=self.user1.username,
        )
        self.concept_version.full_clean()
        self.concept_version.save()
Exemple #2
0
    def setUp(self):
        super(ConceptVersionTest, self).setUp()
        self.concept1 = Concept(
            mnemonic='concept1',
            created_by=self.user1,
            updated_by=self.user1,
            parent=self.source1,
            concept_class='First',
            external_id='EXTID',
            names=[self.name],
        )
        display_name = LocalizedText(name='concept1', locale='en')
        self.concept1.names.append(display_name)
        kwargs = {
            'parent_resource': self.source1,
        }
        Concept.persist_new(self.concept1, self.user1, **kwargs)

        self.concept2 = Concept(
            mnemonic='concept2',
            created_by=self.user1,
            updated_by=self.user1,
            parent=self.source1,
            concept_class='Second',
            names=[self.name],
        )
        kwargs = {
            'parent_resource': self.source2,
        }
        Concept.persist_new(self.concept2, self.user1, **kwargs)
Exemple #3
0
    def test_concept_display_name(self):
        concept = Concept(
            mnemonic='concept1',
            created_by=self.user1,
            updated_by=self.user1,
            parent=self.source1,
            concept_class='First',
            names=[self.name],
        )
        display_name = LocalizedText(
            name='concept1',
            locale='en',
            locale_preferred=True,
        )
        concept.names.append(display_name)
        concept.full_clean()
        concept.save()

        self.assertTrue(Concept.objects.filter(mnemonic='concept1').exists())
        self.assertFalse(concept.retired)
        self.assertEquals(display_name.name, concept.display_name)
        self.assertEquals(display_name.locale, concept.display_locale)
        self.assertEquals(self.source1.owner_name, concept.owner_name)
        self.assertEquals(self.source1.owner_type, concept.owner_type)
        self.assertEquals(0, concept.num_versions)
Exemple #4
0
def create_localized_text(name,
                          locale='en',
                          type='FULLY_SPECIFIED',
                          locale_preferred=False):
    return LocalizedText(name=name,
                         locale=locale,
                         type=type,
                         locale_preferred=locale_preferred)
Exemple #5
0
 def restore_object(self, attrs, instance=None):
     concept_desc = instance if instance else LocalizedText()
     concept_desc.name = attrs.get('name', concept_desc.name)
     concept_desc.locale = attrs.get('locale', concept_desc.locale)
     concept_desc.locale_preferred = attrs.get('locale_preferred', concept_desc.locale_preferred)
     concept_desc.type = attrs.get('type', concept_desc.type)
     concept_desc.external_id = attrs.get('external_id', concept_desc.external_id)
     return concept_desc
Exemple #6
0
 def element_from_native(self, element):
     if not element or not isinstance(element, dict):
         msg = self.error_messages['invalid'] % element
         raise ValidationError(msg)
     lt = LocalizedText()
     external_id = element.get('external_id', None)
     if external_id:
         lt.external_id = external_id
     name = element.get(self.name_attr, None)
     if name is None or not isinstance(name, unicode):
         msg = self.error_messages['invalid'] % element
         raise ValidationError(msg)
     lt.name = name
     locale = element.get('locale', None)
     if locale is None or not isinstance(locale, unicode):
         msg = self.error_messages['invalid'] % element
         raise ValidationError(msg)
     lt.locale = locale
     locale_preferred = element.get('locale_preferred', False)
     lt.locale_preferred = locale_preferred in ['True', 'true', 'TRUE']
     lt.type = element.get(self.type_attr, None)
     return lt
Exemple #7
0
 def element_from_native(self, element):
     if not element or not isinstance(element, dict):
         msg = self.error_messages['invalid'] % element
         raise ValidationError(msg)
     lt = LocalizedText()
     external_id = element.get('external_id', None)
     if external_id:
         lt.external_id = external_id
     name = element.get(self.name_attr, None)
     if name is None or not isinstance(name, unicode):
         msg = self.error_messages['invalid'] % element
         raise ValidationError(msg)
     lt.name = name
     locale = element.get('locale', None)
     if locale is None or not isinstance(locale, unicode):
         msg = self.error_messages['invalid'] % element
         raise ValidationError(msg)
     lt.locale = locale
     locale_preferred = element.get('locale_preferred', False)
     lt.locale_preferred = locale_preferred in [True, 'True', 'true', 'TRUE']
     lt.type = element.get(self.type_attr, None)
     return lt