예제 #1
0
    def test_init_with_args(self):
        synonym_obj = Synonym('synonym')

        assert synonym_obj is not None
        assert synonym_obj.name == 'synonym'

        self.add_objs_and_assert_ids(synonym_obj)
예제 #2
0
    def test_add_synonym_to_oil(self):
        oil_obj = ImportedRecord(**OilTestCase.get_mock_oil_file_record())
        synonym_obj = Synonym('test oil')

        oil_obj.synonyms.append(synonym_obj)

        self.add_objs_and_assert_ids([oil_obj, synonym_obj])
        assert oil_obj.synonyms == [synonym_obj]
        assert synonym_obj.imported == [oil_obj]
예제 #3
0
def add_synonyms(session, oil, row_dict):
    if row_dict.get('Synonyms'):
        for s in row_dict.get('Synonyms').split(','):
            s = s.strip()
            if len(s) > 0:
                synonyms = (session.query(Synonym).filter(
                    Synonym.name == s).all())
                if len(synonyms) > 0:
                    # we link the existing synonym object
                    oil.synonyms.append(synonyms[0])
                else:
                    # we add a new synonym object
                    oil.synonyms.append(Synonym(s))
예제 #4
0
    def test_oils_that_share_a_synonym(self):
        oil_args = OilTestCase.get_mock_oil_file_record()
        oil_obj1 = ImportedRecord(**oil_args)
        oil_args.update({u'oil_name': u'Test Oil 2',
                        u'adios_oil_id': u'AD99998'})
        oil_obj2 = ImportedRecord(**oil_args)
        synonym_obj = Synonym('test oil')

        oil_obj1.synonyms.append(synonym_obj)
        oil_obj2.synonyms.append(synonym_obj)

        self.add_objs_and_assert_ids([oil_obj1, oil_obj2, synonym_obj])

        assert oil_obj1.synonyms == [synonym_obj]
        assert oil_obj2.synonyms == [synonym_obj]
        assert synonym_obj.imported == [oil_obj1, oil_obj2]
예제 #5
0
 def test_init_no_args(self):
     with raises(TypeError):
         synonym_obj = Synonym()
         assert synonym_obj is not None