Update README for ClojureScript.
This commit is contained in:
parent
76608ef516
commit
c083ca3ced
1 changed files with 79 additions and 72 deletions
131
README.org
131
README.org
|
@ -4,78 +4,83 @@
|
|||
1. Test output is pretty printed.
|
||||
2. Equality assertions are also diffed.
|
||||
|
||||
To activate it you will need to call ~pjstadig.humane-test-output/activate!~.
|
||||
The preferred way to do this with Leiningen is to use an injection in
|
||||
the :user profile in your ~/.lein/profiles.clj:
|
||||
Version 0.8.0 and later of humane-test-output requires Clojure 1.8.0 or later.
|
||||
** Clojure
|
||||
To activate it you will need to call ~pjstadig.humane-test-output/activate!~.
|
||||
The preferred way to do this with Leiningen is to use an injection in
|
||||
the :user profile in your ~/.lein/profiles.clj:
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
{:user {:dependencies [[pjstadig/humane-test-output "0.7.1"]]
|
||||
:injections [(require 'pjstadig.humane-test-output)
|
||||
(pjstadig.humane-test-output/activate!)]}}
|
||||
#+END_EXAMPLE
|
||||
#+BEGIN_EXAMPLE
|
||||
{:user {:dependencies [[pjstadig/humane-test-output "0.7.1"]]
|
||||
:injections [(require 'pjstadig.humane-test-output)
|
||||
(pjstadig.humane-test-output/activate!)]}}
|
||||
#+END_EXAMPLE
|
||||
|
||||
This test output formatting works great with Emacs and when running Leiningen
|
||||
in a console. However, some IDEs are also bashing in their own versions of
|
||||
test formatting. If you are on a mixed team and some members need to disable
|
||||
humane test output, they can define the ~INHUMANE_TEST_OUTPUT~ environment
|
||||
variable, though again it's better for each user to enable it in their own
|
||||
~/.lein/profiles.clj.
|
||||
This test output formatting works great with Emacs and when running Leiningen
|
||||
in a console. However, some IDEs are also bashing in their own versions of
|
||||
test formatting. If you are on a mixed team and some members need to disable
|
||||
humane test output, they can define the ~INHUMANE_TEST_OUTPUT~ environment
|
||||
variable, though again it's better for each user to enable it in their own
|
||||
~/.lein/profiles.clj.
|
||||
|
||||
Once humane-test-output is activated, instead of this:
|
||||
#+BEGIN_EXAMPLE
|
||||
FAIL in (a-test) (humane_test_output_test.clj:7)
|
||||
FIXME, I fail.
|
||||
expected: (= {:foo :bar, :baz :quux, :something "a long string?", :another-key "and another value"} {:fo :bar, :baz :quux, :something "a long string?", :another-key "and another value"})
|
||||
actual: (not (= {:another-key "and another value", :foo :bar, :something "a long string?", :baz :quux} {:another-key "and another value", :something "a long string?", :fo :bar, :baz :quux}))
|
||||
Once humane-test-output is activated, instead of this:
|
||||
#+BEGIN_EXAMPLE
|
||||
FAIL in (a-test) (humane_test_output_test.clj:7)
|
||||
FIXME, I fail.
|
||||
expected: (= {:foo :bar, :baz :quux, :something "a long string?", :another-key "and another value"} {:fo :bar, :baz :quux, :something "a long string?", :another-key "and another value"})
|
||||
actual: (not (= {:another-key "and another value", :foo :bar, :something "a long string?", :baz :quux} {:another-key "and another value", :something "a long string?", :fo :bar, :baz :quux}))
|
||||
|
||||
FAIL in (a-test) (humane_test_output_test.clj:11)
|
||||
FIXME, I fail.
|
||||
expected: (= {:foo :bar, :baz :quux} {:foo :bar, :baz :quux} {:fo :bar, :baz :quux})
|
||||
actual: (not (= {:foo :bar, :baz :quux} {:foo :bar, :baz :quux} {:fo :bar, :baz :quux}))
|
||||
FAIL in (a-test) (humane_test_output_test.clj:14)
|
||||
FAIL in (a-test) (humane_test_output_test.clj:11)
|
||||
FIXME, I fail.
|
||||
expected: (= {:foo :bar, :baz :quux} {:foo :bar, :baz :quux} {:fo :bar, :baz :quux})
|
||||
actual: (not (= {:foo :bar, :baz :quux} {:foo :bar, :baz :quux} {:fo :bar, :baz :quux}))
|
||||
FAIL in (a-test) (humane_test_output_test.clj:14)
|
||||
|
||||
FIXME, I fail.
|
||||
expected: (list? foo)
|
||||
actual: (not (list? {:another-key "and another value", :foo :bar, :something "a long string?", :baz :quux}))
|
||||
#+END_EXAMPLE
|
||||
FIXME, I fail.
|
||||
expected: (list? foo)
|
||||
actual: (not (list? {:another-key "and another value", :foo :bar, :something "a long string?", :baz :quux}))
|
||||
#+END_EXAMPLE
|
||||
|
||||
You get this:
|
||||
#+BEGIN_EXAMPLE
|
||||
FAIL in (a-test) (humane_test_output_test.clj:7)
|
||||
FIXME, I fail.
|
||||
expected: {:another-key "and another value",
|
||||
:foo :bar,
|
||||
:something "a long string?",
|
||||
:baz :quux}
|
||||
actual: {:fo :bar}
|
||||
diff: - {:baz :quux,
|
||||
:something "a long string?",
|
||||
:foo :bar,
|
||||
:another-key "and another value"}
|
||||
+ {:fo :bar}
|
||||
You get this:
|
||||
#+BEGIN_EXAMPLE
|
||||
FAIL in (a-test) (humane_test_output_test.clj:7)
|
||||
FIXME, I fail.
|
||||
expected: {:another-key "and another value",
|
||||
:foo :bar,
|
||||
:something "a long string?",
|
||||
:baz :quux}
|
||||
actual: {:fo :bar}
|
||||
diff: - {:baz :quux,
|
||||
:something "a long string?",
|
||||
:foo :bar,
|
||||
:another-key "and another value"}
|
||||
+ {:fo :bar}
|
||||
|
||||
FAIL in (a-test) (humane_test_output_test.clj:10)
|
||||
FIXME, I fail.
|
||||
expected: {:foo :bar, :baz :quux}
|
||||
actual: {:fo :bar, :baz :quux}
|
||||
diff: - {:foo :bar}
|
||||
+ {:fo :bar}
|
||||
FAIL in (a-test) (humane_test_output_test.clj:10)
|
||||
FIXME, I fail.
|
||||
expected: {:foo :bar, :baz :quux}
|
||||
actual: {:fo :bar, :baz :quux}
|
||||
diff: - {:foo :bar}
|
||||
+ {:fo :bar}
|
||||
|
||||
FAIL in (a-test) (humane_test_output_test.clj:13)
|
||||
FIXME, I fail.
|
||||
expected: (list? foo)
|
||||
actual: (not
|
||||
(list?
|
||||
{:another-key "and another value",
|
||||
:foo :bar,
|
||||
:something "a long string?",
|
||||
:baz :quux}))
|
||||
#+END_EXAMPLE
|
||||
FAIL in (a-test) (humane_test_output_test.clj:13)
|
||||
FIXME, I fail.
|
||||
expected: (list? foo)
|
||||
actual: (not
|
||||
(list?
|
||||
{:another-key "and another value",
|
||||
:foo :bar,
|
||||
:something "a long string?",
|
||||
:baz :quux}))
|
||||
#+END_EXAMPLE
|
||||
|
||||
*BONUS FEATURE*
|
||||
*BONUS FEATURE*
|
||||
|
||||
A test containing ~(is (= oops-i-only-gave-one-argument))~ will throw an
|
||||
exception.
|
||||
A test containing ~(is (= oops-i-only-gave-one-argument))~ will throw an
|
||||
exception.
|
||||
** ClojureScript
|
||||
It is not necessary to activate humane-test-output with ClojureScript, but
|
||||
the behavior should be much the same as with Clojure.
|
||||
** License
|
||||
#+BEGIN_EXAMPLE
|
||||
Copyright © Paul Stadig and Outpace Systems, Inc. All rights reserved.
|
||||
|
@ -87,3 +92,5 @@
|
|||
#+END_EXAMPLE
|
||||
** Acknowledgements
|
||||
I am grateful for design and implementation assistance from Bryce Covert.
|
||||
|
||||
Thanks to Miloslav Nenadál for the ClojureScript implementation.
|
||||
|
|
Loading…
Reference in a new issue