Logs are like onions

Or, What underlying implementation is clojure.tools.logging using? Today I want to change the logging configuration of a Clojure program. Where is that configuration located? Changing the obvious resources/log4j.properties doesn’t seem to change the program’s behavior. The program uses clojure.tools.logging, but that’s a wrapper around four different underlying implementations. Each of those implementations has its own ideas …

Read moreLogs are like onions

A suggestion for testing style in Clojure

Getting a test to fail is one thing; getting it to express why it failed is another.Clojure.test provides an assertion macro: is (deftest “my-function”   (testing “some requirement”    (is (something-that-evaluates-to-bool (arg1) (arg2))     “Message to print when it’s false”))) When this assertion fails, in addition to the message, “expected” and “actual” results print. The is macro tries to …

Read moreA suggestion for testing style in Clojure