The change to use test.chuck/for-all instead of test.check/for-all in test.chuck.ct made the test failure report :fail and :shrunk :smallest entries to change from reporting a vector of bounded values to report a map from bounded names to bounded values. As an example, let's consider the following failing test:
(deftest a-failing-test
(checking "int by int lt 25" 100
[i gen/int
j gen/int]
(is (< (* i j) 25))))
Under the current code in master, it reports the following as the failure summary:
So, it's now reporting a map representing the binding names and bounded values {i 9, j 4}, instead of a vector with the bounded values [9 4]
I'm not sure if this change in behavior is a bug or a feature :). Seems like a feature, as now the :fail entry can be taken and put as the binding of a let to run the test body with the same bound values.
If it's a feature, then it's pretty easy to fix the failing test that is making the build to be red, by just changing the expected output.
The change to use
test.chuck/for-all
instead oftest.check/for-all
intest.chuck.ct
made the test failure report:fail
and:shrunk :smallest
entries to change from reporting a vector of bounded values to report a map from bounded names to bounded values. As an example, let's consider the following failing test:Under the current code in master, it reports the following as the failure summary:
Before the change introduced by #30, it would return the following report:
So, it's now reporting a map representing the binding names and bounded values
{i 9, j 4}
, instead of a vector with the bounded values[9 4]
I'm not sure if this change in behavior is a bug or a feature :). Seems like a feature, as now the
:fail
entry can be taken and put as the binding of alet
to run the test body with the same bound values.If it's a feature, then it's pretty easy to fix the failing test that is making the build to be red, by just changing the expected output.
What do you think @gfredericks?