From a71654b21e02e53a8a50f7a64325ed84d3b9bcfb Mon Sep 17 00:00:00 2001 From: Nathan Marz Date: Fri, 11 Sep 2015 13:18:00 -0400 Subject: [PATCH] test of filterer with parameterization --- test/com/rpl/specter/core_test.cljc | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/test/com/rpl/specter/core_test.cljc b/test/com/rpl/specter/core_test.cljc index bdcbf6e..df78388 100644 --- a/test/com/rpl/specter/core_test.cljc +++ b/test/com/rpl/specter/core_test.cljc @@ -420,7 +420,7 @@ (= (s/compiled-transform (p k1 k2) pred m1) (s/transform [k1 k2] pred m1)) )))) -(defspec various-orders-comp +(defspec various-orders-comp-test (for-all+ [k1 (limit-size 3 gen/keyword) k2 (limit-size 3 gen/keyword) @@ -452,6 +452,31 @@ (apply = (for [p paths] (s/compiled-transform p pred m1))) )))) +(defspec filterer-param-test + (for-all+ + [k gen/keyword + k2 gen/keyword + v (gen/vector + (limit-size 5 + (gen-map-with-keys + gen/keyword + gen/int + k + k2 + ))) + pred (gen/elements [odd? even?]) + updater (gen/elements [inc dec])] + (and + (= (s/compiled-select ((s/filterer s/keypath pred) k) v) + (s/compiled-select (s/filterer k pred) v)) + (= (s/compiled-transform ((s/comp-paths (s/filterer s/keypath pred) s/ALL k2) k) + updater + v) + (s/compiled-transform (s/comp-paths (s/filterer k pred) s/ALL k2) + updater + v)) + ))) + ;;TODO: test using params path ;; using filterer, transformed, selected? with parameterized paths ;; using cond-path parameterized paths