示例#1
0
    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)
示例#2
0
    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)
示例#3
0
    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')
示例#4
0
    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)
示例#5
0
    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)
示例#6
0
    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)
示例#7
0
    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)
示例#8
0
 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)
示例#9
0
    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']])