From 360d8094ad99dd29d047a481fee8e9df580a1282 Mon Sep 17 00:00:00 2001 From: frankknoll Date: Wed, 31 May 2023 19:32:45 +0200 Subject: [PATCH] Revert "Revert "refining CountriesColumnMergerTest"" This reverts commit 531475a7f56b19c619aeb16e25f69160a2c344c5. --- src/CountriesColumnMerger.py | 5 +++ src/CountriesColumnMergerTest.py | 53 ++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/src/CountriesColumnMerger.py b/src/CountriesColumnMerger.py index 748fa2a7182..6cdd1a8c805 100644 --- a/src/CountriesColumnMerger.py +++ b/src/CountriesColumnMerger.py @@ -8,3 +8,8 @@ class CountriesColumnMerger: dst[COUNTRIES] = CountriesMerger.mergeSrcIntoDst( dst = dst[COUNTRIES], src = src[COUNTRIES]) + + @staticmethod + def mergeCountriesColumnOfSrcsIntoCountriesColumnOfDst(srcs, dst): + for src in srcs: + CountriesColumnMerger.mergeCountriesColumnOfSrcIntoCountriesColumnOfDst(src = src, dst = dst) diff --git a/src/CountriesColumnMergerTest.py b/src/CountriesColumnMergerTest.py index af242e0e5ac..0cfd17bcde1 100644 --- a/src/CountriesColumnMergerTest.py +++ b/src/CountriesColumnMergerTest.py @@ -51,3 +51,56 @@ class CountriesColumnMergerTest(unittest.TestCase): ], name = 'VAX_LOT')), check_dtype = True) + + def test_mergeCountriesColumnOfSrcsIntoCountriesColumnOfDst(self): + # Given + dst = TestHelper.createDataFrame( + columns = ['Countries'], + data = [ [[]], + [['France', 'United Kingdom']], + [['France']]], + index = pd.Index( + [ + '016M20A', + '030L20B', + '030L20A' + ], + name = 'VAX_LOT')) + + src1 = TestHelper.createDataFrame( + columns = ['Countries'], + data = [ [['Germany1']]], + index = pd.Index( + [ + '030L20B' + ], + name = 'VAX_LOT')) + + src2 = TestHelper.createDataFrame( + columns = ['Countries'], + data = [ [['Germany2']]], + index = pd.Index( + [ + '030L20B' + ], + name = 'VAX_LOT')) + + # When + CountriesColumnMerger.mergeCountriesColumnOfSrcsIntoCountriesColumnOfDst(dst = dst, srcs = [src1, src2]) + + # Then + assert_frame_equal( + dst, + TestHelper.createDataFrame( + columns = ['Countries'], + data = [ [[]], + [['France', 'Germany1', 'Germany2', 'United Kingdom']], + [['France']]], + index = pd.Index( + [ + '016M20A', + '030L20B', + '030L20A' + ], + name = 'VAX_LOT')), + check_dtype = True)