blob: ed66853c39b48bac47c524ccea61bf579112fa17 [file] [log] [blame]
(ns backtype.storm.versioned-store-test
(:use [clojure test])
(:use [backtype.storm testing])
(:import [backtype.storm.utils VersionedStore]))
(defmacro defvstest [name [vs-sym] & body]
`(deftest ~name
(with-local-tmp [dir#]
(let [~vs-sym (VersionedStore. dir#)]
~@body
))))
(defvstest test-empty-version [vs]
(let [v (.createVersion vs)]
(.succeedVersion vs v)
(is (= 1 (count (.getAllVersions vs))))
(is (= v (.mostRecentVersionPath vs)))
))
(defvstest test-multiple-versions [vs]
(.succeedVersion vs (.createVersion vs))
(Thread/sleep 100)
(let [v (.createVersion vs)]
(.succeedVersion vs v)
(is (= 2 (count (.getAllVersions vs))))
(is (= v (.mostRecentVersionPath vs)))
(.createVersion vs)
(is (= v (.mostRecentVersionPath vs)))
))