def test_empty_df(self): validator = StaticValidator(self.params) report = ValidationReport([]) empty_df = pd.DataFrame(columns=["val", "se", "sample_size"], dtype=float) validator.check_bad_se(empty_df, "", report) assert len(report.raised_errors) == 0 validator.params.missing_se_allowed = True validator.check_bad_se(empty_df, "", report) assert len(report.raised_errors) == 0
def test_jeffreys(self): validator = StaticValidator(self.params) report = ValidationReport([]) validator.params.missing_se_allowed = False df = pd.DataFrame([[0, 0, 200], [1, 0, np.nan], [1, np.nan, np.nan]], columns=["val", "se", "sample_size"]) validator.check_bad_se(df, "name", report) assert len(report.raised_errors) == 2 assert "check_se_not_missing_and_in_range" in [ err.check_data_id[0] for err in report.raised_errors ] assert "check_se_0_when_val_0" in [ err.check_data_id[0] for err in report.raised_errors ]