bandalore/src/test/clojure/cemerick/bandalore_test.clj

42 lines
1,002 B
Clojure
Raw Normal View History

2011-02-18 18:32:40 +00:00
(ns cemerick.bandalore-test
(:use cemerick.bandalore
clojure.test
clojure.contrib.core)
(:refer-clojure :exclude (send)))
; kill the verbose aws logging
(.setLevel (java.util.logging.Logger/getLogger "com.amazonaws")
java.util.logging.Level/WARNING)
(def client
(let [id (System/getProperty "aws.id")
secret-key (System/getProperty "aws.secret-key")]
(assert (and id secret-key))
(create-client id secret-key)))
(def *test-queue-url* nil)
(defn- uuid
[]
(str (java.util.UUID/randomUUID)))
(defn- test-queue-name
[]
(str "bandalore-test-" (uuid)))
(defmacro defqueuetest
[name & body]
`(deftest ~name
(binding [*test-queue-url* (create-queue client (test-queue-name))]
(try
(is *test-queue-url*)
~@body
(finally
(delete-queue client *test-queue-url*))))))
(defqueuetest listing-queues
(let [msg (uuid)]
(send client *test-queue-url* msg)
(is ((set (list-queues client)) *test-queue-url*))))