def test_group_comparison(self): entity_group = EntityGroup( 'test/data/04-12-2020_saarland_with_ids.csv') changed_group = EntityGroup( 'test/data/04-12-2020_saarland_with_change.csv') diff = entity_group.compare(changed_group) self.assertIsInstance(diff, pd.DataFrame) self.assertEqual(len(diff), 4)
def test_group_comparison_with_several_changes(self): entity_group = EntityGroup( 'test/data/04-12-2020_saarland_with_ids.csv') changed_group = EntityGroup( 'test/data/04-12-2020_saarland_with_several_changes.csv') diff = entity_group.compare(changed_group) self.assertIsInstance(diff, pd.DataFrame) self.assertEqual(len(diff), 10) self.assertEqual(len(diff['old/new'][diff['old/new'] == 'new']), 5)
def test_group_comparison_with_added_row(self): entity_group = EntityGroup( 'test/data/04-12-2020_saarland_with_ids.csv') changed_group = EntityGroup( 'test/data/04-12-2020_saarland_with_added_row.csv') diff = entity_group.compare(changed_group) self.assertIsInstance(diff, pd.DataFrame) self.assertEqual(len(diff), 1) self.assertEqual(diff['old/new'][0], 'new')
def test_group_comparison_with_several_changes_and_exclusions(self): entity_group = EntityGroup( 'test/data/04-12-2020_saarland_with_ids.csv') changed_group = EntityGroup( 'test/data/04-12-2020_saarland_with_several_changes.csv') diff = entity_group.compare(changed_group, exclude_from_comparison=["Fraktion"]) self.assertIsInstance(diff, pd.DataFrame) self.assertLess(len(diff), 10) self.assertLess(len(diff['old/new'][diff['old/new'] == 'new']), 5)
def test_group_comparison_csv(self): entity_group = EntityGroup( 'test/data/04-12-2020_saarland_with_ids.csv') changed_group = EntityGroup( 'test/data/04-12-2020_saarland_with_change.csv') out_path = f'{changed_group.origin}.diff' diff = entity_group.compare(changed_group, output=out_path) diff_read = EntityGroup.read_diff(out_path) self.assertIsInstance(diff_read, pd.DataFrame) self.assertTrue(diff.equals(diff_read)) os.remove(out_path)
def test_group_init_with_id(self): entity_group = EntityGroup( 'test/data/04-12-2020_saarland_with_ids.csv') df = pd.read_csv('test/data/04-12-2020_saarland_with_ids.csv') id = df['id'][0] self.assertEqual(entity_group.entities[0].id, id)
def test_save_group(self): entity_group = EntityGroup('test/data/04-12-2020_saarland.csv') entity_group.save('test/output/test.csv') entity_group = EntityGroup('test/output/test.csv') self.assertIn('id', entity_group.df.columns)
def test_group_init(self): entity_group = EntityGroup('test/data/04-12-2020_saarland.csv') self.assertEqual(len(entity_group.entities), 51) self.assertIsInstance(entity_group.entities[0], Entity)
print("The following files have been generated:\n") files = {} i = 0 for file in os.listdir(f'output/parliaments/{strpdatetoday}'): files[i] = file print(f'[{i}]', file) i += 1 print("Checking for changes in parliamentarian lists.") for file in os.listdir('db/new/Parlamentarier/'): new_path = f'output/parliaments/{strpdatetoday}/{file}' old_parliament = EntityGroup(f'db/new/Parlamentarier/{file}') new_parliament = EntityGroup(new_path) difference = old_parliament.compare(new_parliament, output=f'{new_path}.diff') if len(difference) != 0: print(f"Difference found in {file}") print(difference) print('\nPlease select a file by number to retrieve Twitter accounts:') select = test_input(test, i) parliament = EntityGroup(f'output/parliaments/{strpdatetoday}/{files[int(select)]}') print(parliament.df[['Name', 'id']])