def test_check_aggregate_top_level(simple_df): # assert that `check_aggregate` returns None for full data assert check_aggregate(simple_df, variable="Primary Energy", year=2005) is None # duplicate scenario, assert `check_aggregate` returns non-matching data _df = simple_df.rename(scenario={"scen_a": "foo"}, append=True).filter( scenario="foo", variable="Primary Energy|Coal", keep=False ) obs = check_aggregate( _df, variable="Primary Energy", year=2005, exclude_on_fail=True ) exp = pd.DataFrame([[12.0, 3.0], [8.0, 2.0], [4.0, 1.0]]) np.testing.assert_array_equal(obs.values, exp.values) # assert that scenario `foo` has correctly been assigned as `exclude=True` np.testing.assert_array_equal(_df.meta.exclude.values, [True, False])
def test_check_aggregate_top_level(meta_df): obs = check_aggregate(meta_df, variable='Primary Energy', year=2005) assert len(obs.columns) == 1 assert obs.index.get_values()[0] == ('model_a', 'scen_a', 'World', 'Primary Energy', 'EJ/y')