Works with Mac out of the box, and with Linux using Meld or xterm diff.
To include as a project dependency using Leiningen: [gui-diff "0.6.7"]
(require '[gui.diff :refer :all])
;; popup a visual diff of any two data structures
(gui-diff {:a 10 :b 20 :c 30} {:a 10 :c 98 :d 34})
;; wrap any code that sends failure information to clojure.test's *test-out*
;; using `with-gui-diff`
(with-gui-diff (my-custom-test-runner))
;; use gui-diff's clojure.test wrappers that will popup a visual diff
;; failure report if any test fails
(run-tests++ 'mylibrary.core-test)
(run-all-tests++ #".*integration.*")
You can specify your own diff tool by setting the DIFFTOOL environment variable.
$ DIFFTOOL=kdiff3 lein repl
MIT License