Clojure [Ring] session store tests now pass

This commit is contained in:
Michael Klishin 2014-05-11 13:35:53 -04:00
parent 31ebc18c12
commit 9a185596ac

View file

@ -1,38 +1,34 @@
(ns monger.test.ring.clojure-session-store-test (ns monger.test.ring.clojure-session-store-test
(:require [monger core util] (:require [monger.core :as mg]
[monger.collection :as mc] [monger.collection :as mc]
[monger.test.helper :as helper]
[clojure.test :refer :all] [clojure.test :refer :all]
[ring.middleware.session.store :refer :all] [ring.middleware.session.store :refer :all]
[monger.ring.session-store :refer :all])) [monger.ring.session-store :refer :all]))
(helper/connect!) (let [conn (mg/connect)
db (mg/get-db conn "monger-test")]
(defn purge-sessions (defn purge-sessions
[f] [f]
(mc/remove "web_sessions") (mc/remove db "sessions")
(mc/remove "sessions")
(f) (f)
(mc/remove "web_sessions") (mc/remove db "sessions"))
(mc/remove "sessions"))
(use-fixtures :each purge-sessions) (use-fixtures :each purge-sessions)
(deftest test-reading-a-session-that-does-not-exist (deftest test-reading-a-session-that-does-not-exist
(let [store (session-store)] (let [store (session-store db "sessions")]
(is (= {} (read-session store "a-missing-key-1228277"))))) (is (= {} (read-session store "a-missing-key-1228277")))))
(deftest test-reading-a-session-that-does-not-exist-given-db (deftest test-reading-a-session-that-does-not-exist-given-db
(let [db (monger.core/get-db) (let [store (session-store db "sessions")]
store (session-store db "sessions")]
(is (= {} (read-session store "a-missing-key-1228277"))))) (is (= {} (read-session store "a-missing-key-1228277")))))
(deftest test-reading-a-session-that-does-exist (deftest test-reading-a-session-that-does-exist
(let [store (session-store) (let [store (session-store db "sessions")
sk (write-session store nil {:library "Monger"}) sk (write-session store nil {:library "Monger"})
m (read-session store sk)] m (read-session store sk)]
(is sk) (is sk)
@ -42,8 +38,7 @@
(deftest test-reading-a-session-that-does-exist-given-db (deftest test-reading-a-session-that-does-exist-given-db
(let [db (monger.core/get-db) (let [store (session-store db "sessions")
store (session-store db "sessions")
sk (write-session store nil {:library "Monger"}) sk (write-session store nil {:library "Monger"})
m (read-session store sk)] m (read-session store sk)]
(is sk) (is sk)
@ -53,7 +48,7 @@
(deftest test-updating-a-session (deftest test-updating-a-session
(let [store (session-store "sessions") (let [store (session-store db "sessions")
sk1 (write-session store nil {:library "Monger"}) sk1 (write-session store nil {:library "Monger"})
sk2 (write-session store sk1 {:library "Ring"}) sk2 (write-session store sk1 {:library "Ring"})
m (read-session store sk2)] m (read-session store sk2)]
@ -65,8 +60,7 @@
(deftest test-updating-a-session-given-db (deftest test-updating-a-session-given-db
(let [db (monger.core/get-db) (let [store (session-store db "sessions")
store (session-store db "sessions")
sk1 (write-session store nil {:library "Monger"}) sk1 (write-session store nil {:library "Monger"})
sk2 (write-session store sk1 {:library "Ring"}) sk2 (write-session store sk1 {:library "Ring"})
m (read-session store sk2)] m (read-session store sk2)]
@ -78,15 +72,14 @@
(deftest test-deleting-a-session (deftest test-deleting-a-session
(let [store (session-store "sessions") (let [store (session-store db "sessions")
sk (write-session store nil {:library "Monger"})] sk (write-session store nil {:library "Monger"})]
(is (nil? (delete-session store sk))) (is (nil? (delete-session store sk)))
(is (= {} (read-session store sk))))) (is (= {} (read-session store sk)))))
(deftest test-deleting-a-session (deftest test-deleting-a-session
(let [db (monger.core/get-db) (let [store (session-store db "sessions")
store (session-store db "sessions")
sk (write-session store nil {:library "Monger"})] sk (write-session store nil {:library "Monger"})]
(is (nil? (delete-session store sk))) (is (nil? (delete-session store sk)))
(is (= {} (read-session store sk))))) (is (= {} (read-session store sk))))))