Writing the tests
Now that you have written your image processing code, it is a good time to write the tests.
Let's just check if we can generate a thumbnail. Create a new thumbnails.thumbnail-test namespace, in the tests.
Remember, if you create the file, it must be named test/thumbnails/thumbnail_test.clj.
Add the following contents to it:
(ns thumbnails.thumbnail-test
(:require [clojure.test :refer :all]
[clojure.java.io :as io]
[thumbnails.image :refer :all]))
(deftest test-image-width
(testing "We should be able to get the image with"
(let [image-stream (io/input-stream "http://imgs.xkcd.com/comics/angular_momentum.jpg")
image (load-image image-stream)]
(save-image image "xkcd-width.png")
(is (= 600 (get-image-width (io/input-stream "xkcd-width.png")))))))
(deftest test-load-image
(testing "We should be able to generate thumbnails"
(let [image-stream (io/input-stream "http://imgs.xkcd.com/comics/angular_momentum.jpg")
...