From 3b3bb2287a5e8e74ecd6843dcb2e0aa2a76fd81f Mon Sep 17 00:00:00 2001 From: "Michael S. Klishin" Date: Sun, 18 Dec 2011 23:24:23 +0400 Subject: [PATCH] Extract test DB connection into a helper, use it for every namespace that hits the database --- test/monger/test/atomic_modifiers.clj | 5 ++--- test/monger/test/collection.clj | 9 +++------ test/monger/test/helper.clj | 16 ++++++++++++++++ test/monger/test/js.clj | 3 ++- test/monger/test/query_operators.clj | 7 ++----- test/monger/test/querying.clj | 6 +++--- test/monger/test/result.clj | 9 +++------ test/monger/test/stress.clj | 3 ++- 8 files changed, 33 insertions(+), 25 deletions(-) create mode 100644 test/monger/test/helper.clj diff --git a/test/monger/test/atomic_modifiers.clj b/test/monger/test/atomic_modifiers.clj index 32d44ae..d9bcd20 100644 --- a/test/monger/test/atomic_modifiers.clj +++ b/test/monger/test/atomic_modifiers.clj @@ -8,15 +8,14 @@ ) (:require [monger core util] [monger.collection :as mgcol] - [monger.result :as mgres]) + [monger.result :as mgres] + [monger.test.helper :as helper]) (:use [clojure.test] [monger.operators] [monger.test.fixtures])) (use-fixtures :each purge-docs purge-things purge-scores) -(monger.core/set-default-write-concern! WriteConcern/SAFE) - ;; ;; $inc diff --git a/test/monger/test/collection.clj b/test/monger/test/collection.clj index 4aee263..6cfef47 100644 --- a/test/monger/test/collection.clj +++ b/test/monger/test/collection.clj @@ -9,19 +9,16 @@ [monger.collection :as mgcol] [monger.result :as mgres] [monger.conversion :as mgcnv] - [monger.js :as js]) + [monger.js :as js] + [monger.test.helper :as helper]) (:use [clojure.test] [monger.operators] [monger.test.fixtures])) -(monger.core/connect!) -(monger.core/set-db! (monger.core/get-db "monger-test")) - - +(helper/connect!) (use-fixtures :each purge-people purge-docs purge-things purge-libraries) -(monger.core/set-default-write-concern! WriteConcern/SAFE) ;; ;; insert diff --git a/test/monger/test/helper.clj b/test/monger/test/helper.clj new file mode 100644 index 0000000..2635a6b --- /dev/null +++ b/test/monger/test/helper.clj @@ -0,0 +1,16 @@ +(ns monger.test.helper + (:require [monger core util]) + (:import [com.mongodb WriteConcern])) + +(def connected (atom false)) +(defn connected? + [] + @connected) + +(defn connect! + [] + (when-not (connected?) + (do + (monger.core/connect!) + (monger.core/set-db! (monger.core/get-db "monger-test")) + (monger.core/set-default-write-concern! WriteConcern/SAFE)))) \ No newline at end of file diff --git a/test/monger/test/js.clj b/test/monger/test/js.clj index b0bff24..a8cfd65 100644 --- a/test/monger/test/js.clj +++ b/test/monger/test/js.clj @@ -1,8 +1,9 @@ (ns monger.test.js (:require [monger js] - [clojure.java.io :only [reader]]) + [monger.test.helper :as helper]) (:use [clojure.test])) +(helper/connect!) (deftest load-js-resource-using-path-on-the-classpath (are [c path] (= c (count (monger.js/load-resource path))) diff --git a/test/monger/test/query_operators.clj b/test/monger/test/query_operators.clj index 89239e1..d7c436a 100644 --- a/test/monger/test/query_operators.clj +++ b/test/monger/test/query_operators.clj @@ -9,7 +9,8 @@ [monger.collection :as mgcol] [monger.result :as mgres] [monger.conversion :as mgcnv] - [monger.js :as js]) + [monger.js :as js] + [monger.test.helper :as helper]) (:use [clojure.test] [monger.operators] [monger.test.fixtures])) @@ -17,12 +18,8 @@ (monger.core/connect!) (monger.core/set-db! (monger.core/get-db "monger-test")) - - (use-fixtures :each purge-people purge-docs purge-things purge-libraries) -(monger.core/set-default-write-concern! WriteConcern/SAFE) - ;; ;; $gt, $gte, $lt, lte ;; diff --git a/test/monger/test/querying.clj b/test/monger/test/querying.clj index 0247c37..d90b21b 100644 --- a/test/monger/test/querying.clj +++ b/test/monger/test/querying.clj @@ -7,16 +7,16 @@ [java.util Date]) (:require [monger core util] [monger.collection :as mgcol] - [monger.result :as mgres]) + [monger.result :as mgres] + [monger.test.helper :as helper]) (:use [clojure.test] [monger.test.fixtures] [monger conversion query operators])) +(helper/connect!) (use-fixtures :each purge-docs purge-things purge-locations) -(monger.core/set-default-write-concern! WriteConcern/SAFE) - ;; ;; monger.collection/* finders ("low-level API") diff --git a/test/monger/test/result.clj b/test/monger/test/result.clj index b77e740..272c6e4 100644 --- a/test/monger/test/result.clj +++ b/test/monger/test/result.clj @@ -1,13 +1,10 @@ (ns monger.test.result (:import (com.mongodb BasicDBObject WriteResult WriteConcern) (java.util Date)) - (:require [monger core collection conversion]) + (:require [monger core collection conversion] + [monger.test.helper :as helper]) (:use [clojure.test])) - -(monger.core/connect!) -(monger.core/set-db! (monger.core/get-db "monger-test")) - - +(helper/connect!) ;; ;; MongoCommandResult diff --git a/test/monger/test/stress.clj b/test/monger/test/stress.clj index 0950b4a..e0d981b 100644 --- a/test/monger/test/stress.clj +++ b/test/monger/test/stress.clj @@ -1,7 +1,8 @@ (ns monger.test.stress (:import [com.mongodb Mongo DB DBCollection WriteResult DBObject WriteConcern DBCursor] [java.util Date]) - (:require [monger core]) + (:require [monger core] + [monger.test.helper :as helper]) (:use [clojure.test]))