def test_dep_variable(): global class_obj assert dds.keep("/path", f) == 1 assert _c.value == 1 class_obj = 2 assert dds.keep("/path", f) == 1 assert _c.value == 2
def test_shadow(): global xx assert dds.keep("/p", fun2) == 2 assert _c.value == 1 xx = 1 assert dds.keep("/p", fun2) == 2 assert _c.value == 1
def test_args(): # TODO: these tests are just checking that the calls are processed # They should also check that the function is not retriggered again. assert dds.keep(spath, fun_args, 1, 2) == 3 assert dds.keep(spath, fun_args, 1, b=2) == 3 assert dds.keep(spath, fun_args, a=1, b=2) == 3 assert dds.eval(fun_args_outer) == 3 assert dds.eval(fun_args, 1, 2) == 3 assert dds.eval(fun_args, a=1, b=2) == 3
def test(): fun() assert _c.value == 1 dds.keep(_p, f) assert _c.value == 1 dds.eval(f) assert _c.value == 1 dds.eval(f2) assert _c.value == 1
def pipeline(): wine_data = load_data() y = wine_data.quality X = wine_data.drop("quality", axis=1) X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.15, random_state=123, stratify=y ) clf = dds.keep(path_model, build_model, X_train, y_train) dds.keep(path_model_stats, model_stats, clf, X_test, y_test)
def pipeline(): wine_data = load_data() y = wine_data.quality X = wine_data.drop("quality", axis=1) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) clf = dds.keep("/wine-quality/my_model", build_model, X_train, y_train) stats = dds.keep("/wine-quality/my_model_stats.json", model_stats, clf, X_test, y_test) print("*** done ***") return stats
def fun2(): return dds.keep( "/path", lambda: ( # comment x + # comment x), )
def fun1(): return dds.keep("/path", lambda: 1)
def f2_1(): kargs = [1, 2, 3] return dds.keep("/p1", f2, *kargs)
def f1_1(): kargs = [1, 2, 3] return dds.keep("/p1", f1, *kargs)
def test_extern_class_params(): assert dds.keep("/path", test_extern_class_params_f1) == 1
def fun_1_f1(): dds.keep(p, fun_1_f)
def fun(): return dds.keep("/path", _fun)
def load_data(): return dds.keep(path_raw, _load_data)
def f2(): dds.keep(_p3, f1)
def fun_4_f(): dds.keep(p, fun_4_f1) dds.keep(p2, fun_4_f2)
def fun_3_f1(): dds.keep(p, fun_3_f)
def fun_2_f1(): dds.keep(p, fun_2_f)
def fun_args_outer(): dds.keep(spath, fun_args, 1, 2) dds.keep(spath, fun_args, 1, b=2) dds.keep(spath, fun_args, a=1, b=2) return dds.keep(spath, fun_args, b=2, a=1)
def f2_wrap(): return dds.keep(path_1, f2)
def test(): assert dds.keep(spath, fun1) == "a" assert _c.value == 1 assert dds.keep(spath, fun1) == "a" assert _c.value == 1
def fun3(): return dds.keep(spath, _fun, False)
def fun(): return dds.keep(spath, _fun)
def test_simple(): assert dds.keep("/path", f) == "x"
def test_keep_infer(): assert dds.keep("/p", f2, 2, y=3, z=0) == 5 assert dds.keep("/p3", f3) == 1
def test_simple(): assert dds.keep("/path", f) == 1 assert _c.value == 1 assert dds.keep("/path", f) == 1 assert _c.value == 1
def f5_wrap(): return dds.keep(path_1, f5)
def fun2(): return dds.keep(spath, _fun, True)