def test_remove_persons_with_insufficient_results_minus_one_none() -> None: df_before = pd.DataFrame({'personId': ['person1', 'person1', 'person2', 'person3', 'person3'], 'best': [50, 40, 50, 50, 40]}, index=[0,1,2,3,4]) df_expected = df_before df_after = data_filter._remove_persons_with_insufficient_results(df_before, -1) debug_print(df_before, df_after, df_expected) assert df_expected.equals(df_after)
def test_remove_persons_with_insufficient_results_two_all() -> None: df_before = pd.DataFrame({'personId': ['person1', 'person2', 'person3'], 'best': [50, 40, 50]}, index=[0,1,2]) # create a row then drop it so that column type is identical to original one df_expected = pd.DataFrame({'personId': ['whatever'], 'best': [50]}, index=[0]) df_expected = df_expected.drop(0) df_after = data_filter._remove_persons_with_insufficient_results(df_before, 2) debug_print(df_before, df_after, df_expected) assert df_expected.equals(df_after)
def test_remove_persons_with_insufficient_results_three_middle() -> None: df_before = pd.DataFrame({'personId': ['person1', 'person1', 'person1', 'person2', 'person3', 'person3', 'person3'], 'best': [50, 40, 50, 50, 40, 30, 20]}, index=[0,1,2,3,4,5,6]) df_expected = pd.DataFrame({'personId': ['person1', 'person1', 'person1', 'person3', 'person3', 'person3'], 'best': [50, 40, 50, 40, 30, 20]}, index=[0,1,2,4,5,6]) df_after = data_filter._remove_persons_with_insufficient_results(df_before, 3) debug_print(df_before, df_after, df_expected) assert df_expected.equals(df_after)