def test_relearn_affiliation_remains_same(self): zuma = Person.query.get(self.fx.PersonData.zuma.id) self.assertIsNone(zuma.affiliation) # set to ANC anc = Affiliation.query.filter(Affiliation.code == '4.3').one() zuma.affiliation = anc # shouldn't do anything self.assertFalse(zuma.relearn_affiliation()) # add an ANC source from today doc1 = Document.query.get(self.fx.DocumentData.simple.id) doc1.published_at = datetime.datetime.utcnow() ds = DocumentSource() ds.document = doc1 ds.person = zuma ds.affiliation = anc # add a DA source from a while ago doc2 = Document.query.get(self.fx.DocumentData.simple.id) doc2.published_at = datetime.datetime.utcnow() - datetime.timedelta(days=3) ds = DocumentSource() ds.document = doc2 ds.person = zuma ds.affiliation = Affiliation.query.filter(Affiliation.code == '4.8').one() self.db.session.add(ds) self.db.session.flush() self.assertFalse(zuma.relearn_affiliation()) self.assertEqual(anc, zuma.affiliation)
def test_relearn_affiliation_changes_none_set(self): zuma = Person.query.get(self.fx.PersonData.zuma.id) self.assertIsNone(zuma.affiliation) # shouldn't do anything self.assertFalse(zuma.relearn_affiliation()) # add an ANC source doc = Document.query.get(self.fx.DocumentData.simple.id) doc.published_at = datetime.datetime.utcnow() ds = DocumentSource() ds.document = doc ds.person = zuma anc = Affiliation.query.filter(Affiliation.code == '4.3').one() ds.affiliation = anc self.db.session.add(ds) self.db.session.flush() self.assertTrue(zuma.relearn_affiliation()) self.assertEqual(anc, zuma.affiliation)
def test_diff_secondary(self): self.assertNotEqual( DocumentSource(source_type='secondary', unnamed=False, name='Source', source_function_id=1, affiliation_id=1), DocumentSource(source_type='secondary', unnamed=False, name='Source', source_function_id=2, affiliation_id=1)) self.assertNotEqual( DocumentSource(source_type='secondary', unnamed=False, name='Source', source_function_id=1, affiliation_id=1), DocumentSource(source_type='secondary', unnamed=False, name='Source', source_function_id=1, affiliation_id=2)) self.assertNotEqual( DocumentSource(source_type='secondary', unnamed=False, name='Blah ', source_function_id=1, affiliation_id=1), DocumentSource(source_type='secondary', unnamed=False, name='Source', source_function_id=1, affiliation_id=1))
def test_diff_child_named(self): self.assertNotEqual( DocumentSource(source_type='child', unnamed=False, name='Fred', unnamed_race_id=2, unnamed_gender_id=1, source_age_id=1, source_role_id=1, quoted=0), DocumentSource(source_type='child', unnamed=False, name='Fred', unnamed_race_id=1, unnamed_gender_id=1, source_age_id=1, source_role_id=1, quoted=0)) self.assertNotEqual( DocumentSource(source_type='child', unnamed=False, name='Fred', unnamed_race_id=1, unnamed_gender_id=2, source_age_id=1, source_role_id=1, quoted=0), DocumentSource(source_type='child', unnamed=False, name='Fred', unnamed_race_id=1, unnamed_gender_id=1, source_age_id=1, source_role_id=1, quoted=0)) self.assertNotEqual( DocumentSource(source_type='child', unnamed=False, name='Fred', unnamed_race_id=1, unnamed_gender_id=1, source_age_id=2, source_role_id=1, quoted=0), DocumentSource(source_type='child', unnamed=False, name='Fred', unnamed_race_id=1, unnamed_gender_id=1, source_age_id=1, source_role_id=1, quoted=0)) self.assertNotEqual( DocumentSource(source_type='child', unnamed=False, name='Joe', unnamed_race_id=1, unnamed_gender_id=1, source_age_id=1, source_role_id=1, quoted=0), DocumentSource(source_type='child', unnamed=False, name='Ben', unnamed_race_id=1, unnamed_gender_id=1, source_age_id=1, source_role_id=1, quoted=0))