def test_get_mappings(self): # pylint: disable=too-many-locals source1 = OrganizationSourceFactory() source2 = OrganizationSourceFactory() concept1 = ConceptFactory(parent=source1) concept2 = ConceptFactory(parent=source1) concept3 = ConceptFactory(parent=source2) concept4 = ConceptFactory(parent=source2) mapping1 = MappingFactory(from_concept=concept1, to_concept=concept2, parent=source1) mapping2 = MappingFactory(from_concept=concept1, to_concept=concept3, parent=source1) mapping3 = MappingFactory(from_concept=concept1, to_concept=concept3, parent=source2) mapping4 = MappingFactory(from_concept=concept4, to_concept=concept1, parent=source1) mapping5 = MappingFactory(from_concept=concept4, to_concept=concept1, parent=source2) MappingFactory(from_concept=concept1, to_concept=concept2, parent=source2) mappings = concept1.get_unidirectional_mappings() self.assertEqual(mappings.count(), 2) self.assertEqual(list(mappings), [mapping2, mapping1]) mappings = concept1.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings), [mapping4]) mappings = concept1.get_bidirectional_mappings() self.assertEqual(mappings.count(), 3) self.assertEqual(list(mappings), [mapping4, mapping2, mapping1]) mappings = concept2.get_unidirectional_mappings() self.assertEqual(mappings.count(), 0) mappings = concept2.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings), [mapping1]) mappings = concept3.get_unidirectional_mappings() self.assertEqual(mappings.count(), 0) mappings = concept3.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings), [mapping3]) mappings = concept4.get_unidirectional_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings), [mapping5]) mappings = concept4.get_indirect_mappings() self.assertEqual(mappings.count(), 0)
def test_get_mappings(self): # pylint: disable=too-many-locals source1 = OrganizationSourceFactory() source2 = OrganizationSourceFactory() concept1 = ConceptFactory(parent=source1) concept2 = ConceptFactory(parent=source1) concept3 = ConceptFactory(parent=source2) concept4 = ConceptFactory(parent=source2) concept1_latest = concept1.get_latest_version() concept2_latest = concept2.get_latest_version() concept3_latest = concept3.get_latest_version() concept4_latest = concept4.get_latest_version() mapping1 = MappingFactory(from_concept=concept1_latest, to_concept=concept2_latest, parent=source1) mapping2 = MappingFactory(from_concept=concept1_latest, to_concept=concept3_latest, parent=source1) mapping3 = MappingFactory(from_concept=concept1_latest, to_concept=concept3_latest, parent=source2) mapping4 = MappingFactory(from_concept=concept4_latest, to_concept=concept1_latest, parent=source1) mapping5 = MappingFactory(from_concept=concept4_latest, to_concept=concept1_latest, parent=source2) MappingFactory(from_concept=concept1_latest, to_concept=concept2_latest, parent=source2) mappings = concept1.get_unidirectional_mappings() self.assertEqual(mappings.count(), 2) self.assertEqual(list(mappings.order_by('created_at')), [mapping1, mapping2]) mappings = concept1.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings.order_by('created_at')), [mapping4]) mappings = concept1.get_bidirectional_mappings() self.assertEqual(mappings.count(), 3) self.assertEqual(list(mappings.order_by('created_at')), [mapping1, mapping2, mapping4]) mappings = concept1_latest.get_unidirectional_mappings() self.assertEqual(mappings.count(), 2) self.assertEqual(list(mappings.order_by('created_at')), [mapping1, mapping2]) mappings = concept1_latest.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings.order_by('created_at')), [mapping4]) mappings = concept1_latest.get_bidirectional_mappings() self.assertEqual(mappings.count(), 3) self.assertEqual(list(mappings.order_by('created_at')), [mapping1, mapping2, mapping4]) mappings = concept2.get_unidirectional_mappings() self.assertEqual(mappings.count(), 0) mappings = concept2.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings.order_by('created_at')), [mapping1]) mappings = concept3.get_unidirectional_mappings() self.assertEqual(mappings.count(), 0) mappings = concept3.get_indirect_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings.order_by('created_at')), [mapping3]) mappings = concept4.get_unidirectional_mappings() self.assertEqual(mappings.count(), 1) self.assertEqual(list(mappings.order_by('created_at')), [mapping5]) mappings = concept4.get_indirect_mappings() self.assertEqual(mappings.count(), 0)