def test_make_scalrecommendation_go(): """Test that we can make scal recommendation objects from three WaterOilGas objects, but only with GasOil objects""" go_param_names = [ "swirr", "sorg", "krgend", "krgmax", "swl", "sgcr", "Lg", "Eg", "Tg", "Log", "Eog", "Tog", "kroend", ] low_let_go = slicedict(LOW_SAMPLE_LET, go_param_names) low = PyscalFactory.create_water_oil_gas(low_let_go) base_let_go = slicedict(BASE_SAMPLE_LET, go_param_names) base = PyscalFactory.create_water_oil_gas(base_let_go) high_let_go = slicedict(HIGH_SAMPLE_LET, go_param_names) assert "Lw" not in high_let_go high = PyscalFactory.create_water_oil_gas(high_let_go) rec = SCALrecommendation(low, base, high) assert rec.type == WaterOilGas interpolant = rec.interpolate(-0.5) check_table(interpolant.gasoil.table) assert interpolant.wateroil is None sat_table_str_ok(interpolant.SGOF()) sat_table_str_ok(interpolant.SGFN()) # This should return empty string assert not interpolant.SWOF()
def test_make_scalrecommendation_wo(): """Test that we can make scal recommendation objects from three WaterOilGas objects, but only with WaterOil objects""" wo_param_names = [ "swirr", "sorw", "krwend", "krwmax", "swl", "swcr", "Lw", "Ew", "Tw", "Lo", "Eo", "To", "krowend", ] low_let_wo = slicedict(LOW_SAMPLE_LET, wo_param_names) low = PyscalFactory.create_water_oil_gas(low_let_wo) base_let_wo = slicedict(BASE_SAMPLE_LET, wo_param_names) base = PyscalFactory.create_water_oil_gas(base_let_wo) high_let_wo = slicedict(HIGH_SAMPLE_LET, wo_param_names) assert "Lg" not in high_let_wo high = PyscalFactory.create_water_oil_gas(high_let_wo) rec = SCALrecommendation(low, base, high) interpolant = rec.interpolate(-0.5) check_table(interpolant.wateroil.table) assert interpolant.gasoil is None assert sat_table_str_ok(interpolant.SWOF()) assert sat_table_str_ok(interpolant.SWFN()) # This should return empty string assert not interpolant.SGOF()
def test_slicedict(orig_dict, keylist, expected_dict): assert factory.slicedict(orig_dict, keylist) == expected_dict