More test suite cleanup

This commit is contained in:
Michael S. Klishin 2012-05-01 16:29:58 +04:00
parent ef2af245e7
commit 971b2e230c
2 changed files with 104 additions and 104 deletions

View file

@ -4,8 +4,8 @@
(:import [com.mongodb WriteResult WriteConcern DBCursor DBObject CommandResult$CommandFailure MapReduceOutput MapReduceCommand MapReduceCommand$OutputType] (:import [com.mongodb WriteResult WriteConcern DBCursor DBObject CommandResult$CommandFailure MapReduceOutput MapReduceCommand MapReduceCommand$OutputType]
org.bson.types.ObjectId org.bson.types.ObjectId
java.util.Date) java.util.Date)
(:require [monger core util] (:require [monger.core :as mg]
[monger.collection :as mgcol] [monger.collection :as mc]
[monger.result :as mgres] [monger.result :as mgres]
[monger.test.helper :as helper]) [monger.test.helper :as helper])
(:use clojure.test (:use clojure.test
@ -23,49 +23,49 @@
(deftest get-collection-size (deftest get-collection-size
(let [collection "things"] (let [collection "things"]
(is (= 0 (mgcol/count collection))) (is (= 0 (mc/count collection)))
(mgcol/insert-batch collection [{ :language "Clojure", :name "langohr" } (mc/insert-batch collection [{:language "Clojure" :name "langohr"}
{ :language "Clojure", :name "monger" } {:language "Clojure" :name "monger"}
{ :language "Clojure", :name "incanter" } {:language "Clojure" :name "incanter"}
{ :language "Scala", :name "akka" }] ) {:language "Scala" :name "akka"}])
(is (= 4 (mgcol/count collection))) (is (= 4 (mc/count collection)))
(is (mgcol/any? collection)) (is (mc/any? collection))
(is (= 3 (mgcol/count monger.core/*mongodb-database* collection { :language "Clojure" }))) (is (= 3 (mc/count mg/*mongodb-database* collection {:language "Clojure"})))
(is (mgcol/any? monger.core/*mongodb-database* collection { :language "Clojure" })) (is (mc/any? mg/*mongodb-database* collection {:language "Clojure"}))
(is (= 1 (mgcol/count collection { :language "Scala" }))) (is (= 1 (mc/count collection {:language "Scala" })))
(is (mgcol/any? collection { :language "Scala" })) (is (mc/any? collection {:language "Scala"}))
(is (= 0 (mgcol/count monger.core/*mongodb-database* collection { :language "Python" }))) (is (= 0 (mc/count mg/*mongodb-database* collection {:language "Python" })))
(is (not (mgcol/any? monger.core/*mongodb-database* collection { :language "Python" }))))) (is (not (mc/any? mg/*mongodb-database* collection {:language "Python"})))))
(deftest remove-all-documents-from-collection (deftest remove-all-documents-from-collection
(let [collection "libraries"] (let [collection "libraries"]
(mgcol/insert-batch collection [{ :language "Clojure", :name "monger" } (mc/insert-batch collection [{:language "Clojure" :name "monger"}
{ :language "Clojure", :name "langohr" } {:language "Clojure" :name "langohr"}
{ :language "Clojure", :name "incanter" } {:language "Clojure" :name "incanter"}
{ :language "Scala", :name "akka" }]) {:language "Scala" :name "akka"}])
(is (= 4 (mgcol/count collection))) (is (= 4 (mc/count collection)))
(mgcol/remove collection) (mc/remove collection)
(is (= 0 (mgcol/count collection))))) (is (= 0 (mc/count collection)))))
(deftest remove-some-documents-from-collection (deftest remove-some-documents-from-collection
(let [collection "libraries"] (let [collection "libraries"]
(mgcol/insert-batch collection [{ :language "Clojure", :name "monger" } (mc/insert-batch collection [{:language "Clojure" :name "monger"}
{ :language "Clojure", :name "langohr" } {:language "Clojure" :name "langohr"}
{ :language "Clojure", :name "incanter" } {:language "Clojure" :name "incanter"}
{ :language "Scala", :name "akka" }]) {:language "Scala" :name "akka"}])
(is (= 4 (mgcol/count collection))) (is (= 4 (mc/count collection)))
(mgcol/remove collection { :language "Clojure" }) (mc/remove collection {:language "Clojure"})
(is (= 1 (mgcol/count collection))))) (is (= 1 (mc/count collection)))))
(deftest remove-a-single-document-from-collection (deftest remove-a-single-document-from-collection
(let [collection "libraries" (let [collection "libraries"
oid (ObjectId.)] oid (ObjectId.)]
(mgcol/insert-batch collection [{ :language "Clojure" :name "monger" :_id oid }]) (mc/insert-batch collection [{:language "Clojure" :name "monger" :_id oid}])
(mgcol/remove-by-id collection oid) (mc/remove-by-id collection oid)
(is (= 0 (mgcol/count collection))) (is (= 0 (mc/count collection)))
(is (nil? (mgcol/find-by-id collection oid))))) (is (nil? (mc/find-by-id collection oid)))))
;; ;;
@ -74,23 +74,23 @@
(deftest checking-for-collection-existence-when-it-does-not-exist (deftest checking-for-collection-existence-when-it-does-not-exist
(let [collection "widgets"] (let [collection "widgets"]
(mgcol/drop collection) (mc/drop collection)
(is (false? (mgcol/exists? collection))))) (is (false? (mc/exists? collection)))))
(deftest checking-for-collection-existence-when-it-does-exist (deftest checking-for-collection-existence-when-it-does-exist
(let [collection "widgets"] (let [collection "widgets"]
(mgcol/drop collection) (mc/drop collection)
(mgcol/insert-batch collection [{ :name "widget1" } (mc/insert-batch collection [{:name "widget1"}
{ :name "widget2" }]) {:name "widget2"}])
(is (mgcol/exists? collection)) (is (mc/exists? collection))
(mgcol/drop collection) (mc/drop collection)
(is (false? (mgcol/exists? collection))) (is (false? (mc/exists? collection)))
(mgcol/create "widgets" { :capped true :size 100000 :max 10 }) (mc/create "widgets" {:capped true :size 100000 :max 10})
(is (mgcol/exists? collection)) (is (mc/exists? collection))
(mgcol/rename collection "gadgets") (mc/rename collection "gadgets")
(is (not (mgcol/exists? collection))) (is (not (mc/exists? collection)))
(is (mgcol/exists? "gadgets")) (is (mc/exists? "gadgets"))
(mgcol/drop "gadgets"))) (mc/drop "gadgets")))
;; ;;
;; any?, empty? ;; any?, empty?
@ -98,23 +98,23 @@
(deftest test-any-on-empty-collection (deftest test-any-on-empty-collection
(let [collection "things"] (let [collection "things"]
(is (not (mgcol/any? collection))))) (is (not (mc/any? collection)))))
(deftest test-any-on-non-empty-collection (deftest test-any-on-non-empty-collection
(let [collection "things" (let [collection "things"
_ (mgcol/insert collection { :language "Clojure", :name "langohr" })] _ (mc/insert collection {:language "Clojure" :name "langohr"})]
(is (mgcol/any? "things")) (is (mc/any? "things"))
(is (mgcol/any? monger.core/*mongodb-database* "things" {:language "Clojure"})))) (is (mc/any? mg/*mongodb-database* "things" {:language "Clojure"}))))
(deftest test-empty-on-empty-collection (deftest test-empty-on-empty-collection
(let [collection "things"] (let [collection "things"]
(is (mgcol/empty? collection)) (is (mc/empty? collection))
(is (mgcol/empty? monger.core/*mongodb-database* collection)))) (is (mc/empty? mg/*mongodb-database* collection))))
(deftest test-empty-on-non-empty-collection (deftest test-empty-on-non-empty-collection
(let [collection "things" (let [collection "things"
_ (mgcol/insert collection { :language "Clojure", :name "langohr" })] _ (mc/insert collection {:language "Clojure" :name "langohr"})]
(is (not (mgcol/empty? "things"))))) (is (not (mc/empty? "things")))))
;; ;;
@ -123,12 +123,12 @@
(deftest test-distinct-values (deftest test-distinct-values
(let [collection "widgets" (let [collection "widgets"
batch [{ :state "CA" :quantity 1 :price 199.00 } batch [{:state "CA" :quantity 1 :price 199.00}
{ :state "NY" :quantity 2 :price 199.00 } {:state "NY" :quantity 2 :price 199.00}
{ :state "NY" :quantity 1 :price 299.00 } {:state "NY" :quantity 1 :price 299.00}
{ :state "IL" :quantity 2 :price 11.50 } {:state "IL" :quantity 2 :price 11.50 }
{ :state "CA" :quantity 2 :price 2.95 } {:state "CA" :quantity 2 :price 2.95 }
{ :state "IL" :quantity 3 :price 5.50 }]] {:state "IL" :quantity 3 :price 5.50 }]]
(mgcol/insert-batch collection batch) (mc/insert-batch collection batch)
(is (= ["CA" "IL" "NY"] (sort (mgcol/distinct monger.core/*mongodb-database* collection :state {})))) (is (= ["CA" "IL" "NY"] (sort (mc/distinct mg/*mongodb-database* collection :state {}))))
(is (= ["CA" "NY"] (sort (mgcol/distinct collection :state { :price { $gt 100.00 } })))))) (is (= ["CA" "NY"] (sort (mc/distinct collection :state {:price {$gt 100.00}}))))))

View file

@ -4,13 +4,13 @@
(:import [com.mongodb WriteResult WriteConcern DBCursor DBObject] (:import [com.mongodb WriteResult WriteConcern DBCursor DBObject]
org.bson.types.ObjectId org.bson.types.ObjectId
java.util.Date) java.util.Date)
(:require [monger core util] (:require [monger.core :as mg]
[monger.collection :as mgcol] [monger.util :as mu]
[monger.result :as mgres] [monger.collection :as mc]
[monger.conversion :as mgcnv]
[monger.test.helper :as helper]) [monger.test.helper :as helper])
(:use clojure.test (:use clojure.test
monger.operators monger.operators
monger.conversion
monger.test.fixtures)) monger.test.fixtures))
(helper/connect!) (helper/connect!)
@ -24,69 +24,69 @@
(deftest insert-a-basic-document-without-id-and-with-default-write-concern (deftest insert-a-basic-document-without-id-and-with-default-write-concern
(let [collection "people" (let [collection "people"
doc { :name "Joe", :age 30 }] doc {:name "Joe" :age 30}]
(is (monger.result/ok? (mgcol/insert "people" doc))) (is (monger.result/ok? (mc/insert "people" doc)))
(is (= 1 (mgcol/count collection))))) (is (= 1 (mc/count collection)))))
(deftest insert-a-basic-document-with-explicitly-passed-database-without-id-and-with-default-write-concern (deftest insert-a-basic-document-with-explicitly-passed-database-without-id-and-with-default-write-concern
(let [collection "people" (let [collection "people"
doc { :name "Joe", :age 30 }] doc {:name "Joe" :age 30}]
(dotimes [n 5] (dotimes [n 5]
(is (monger.result/ok? (mgcol/insert monger.core/*mongodb-database* "people" doc WriteConcern/SAFE)))) (is (monger.result/ok? (mc/insert monger.core/*mongodb-database* "people" doc WriteConcern/SAFE))))
(is (= 5 (mgcol/count collection))))) (is (= 5 (mc/count collection)))))
(deftest insert-a-basic-document-without-id-and-with-explicit-write-concern (deftest insert-a-basic-document-without-id-and-with-explicit-write-concern
(let [collection "people" (let [collection "people"
doc { :name "Joe", :age 30 }] doc {:name "Joe" :age 30}]
(is (monger.result/ok? (mgcol/insert "people" doc WriteConcern/SAFE))) (is (monger.result/ok? (mc/insert "people" doc WriteConcern/SAFE)))
(is (= 1 (mgcol/count collection))))) (is (= 1 (mc/count collection)))))
(deftest insert-a-basic-db-object-without-id-and-with-default-write-concern (deftest insert-a-basic-db-object-without-id-and-with-default-write-concern
(let [collection "people" (let [collection "people"
doc (mgcnv/to-db-object { :name "Joe", :age 30 })] doc (to-db-object {:name "Joe" :age 30})]
(is (nil? (.get ^DBObject doc "_id"))) (is (nil? (.get ^DBObject doc "_id")))
(mgcol/insert "people" doc) (mc/insert "people" doc)
(is (not (nil? (monger.util/get-id doc)))))) (is (not (nil? (monger.util/get-id doc))))))
(deftest insert-a-map-with-id-and-with-default-write-concern (deftest insert-a-map-with-id-and-with-default-write-concern
(let [collection "people" (let [collection "people"
id (ObjectId.) id (ObjectId.)
doc { :name "Joe", :age 30 "_id" id } doc {:name "Joe" :age 30 "_id" id}
result (mgcol/insert "people" doc)] result (mc/insert "people" doc)]
(is (= id (monger.util/get-id doc))))) (is (= id (monger.util/get-id doc)))))
(deftest insert-a-document-with-clojure-ratio-in-it (deftest insert-a-document-with-clojure-ratio-in-it
(let [collection "widgets" (let [collection "widgets"
id (ObjectId.) id (ObjectId.)
doc { :ratio 11/2 "_id" id } doc {:ratio 11/2 "_id" id}
result (mgcol/insert "widgets" doc)] result (mc/insert "widgets" doc)]
(is (= 5.5 (:ratio (mgcol/find-map-by-id collection id)))))) (is (= 5.5 (:ratio (mc/find-map-by-id collection id))))))
(deftest insert-a-document-with-clojure-keyword-in-it (deftest insert-a-document-with-clojure-keyword-in-it
(let [collection "widgets" (let [collection "widgets"
id (ObjectId.) id (ObjectId.)
doc { :keyword :kwd "_id" id } doc {:keyword :kwd "_id" id}
result (mgcol/insert "widgets" doc)] result (mc/insert "widgets" doc)]
(is (= (name :kwd) (:keyword (mgcol/find-map-by-id collection id)))))) (is (= (name :kwd) (:keyword (mc/find-map-by-id collection id))))))
(deftest insert-a-document-with-clojure-keyword-in-a-set-in-it (deftest insert-a-document-with-clojure-keyword-in-a-set-in-it
(let [collection "widgets" (let [collection "widgets"
id (ObjectId.) id (ObjectId.)
doc { :keyword1 {:keyword2 #{:kw1 :kw2}} "_id" id } doc {:keyword1 {:keyword2 #{:kw1 :kw2}} "_id" id}
result (mgcol/insert "widgets" doc)] result (mc/insert "widgets" doc)]
(is (= (sort ["kw1" "kw2"]) (is (= (sort ["kw1" "kw2"])
(sort (get-in (mgcol/find-map-by-id collection id) [:keyword1 :keyword2])))))) (sort (get-in (mc/find-map-by-id collection id) [:keyword1 :keyword2]))))))
(defrecord Metrics (defrecord Metrics
[rps eps]) [rps eps])
(deftest ^:focus insert-a-document-with-clojure-record-in-it (deftest ^:focus insert-a-document-with-clojure-record-in-it
(let [collection "widgets" (let [collection "widgets"
id (ObjectId.) id (ObjectId.)
doc { :record (Metrics. 10 20) "_id" id } doc {:record (Metrics. 10 20) "_id" id}
result (mgcol/insert "widgets" doc)] result (mc/insert "widgets" doc)]
(is (= {:rps 10 :eps 20} (:record (mgcol/find-map-by-id collection id)))))) (is (= {:rps 10 :eps 20} (:record (mc/find-map-by-id collection id))))))
@ -96,19 +96,19 @@
(deftest insert-a-batch-of-basic-documents-without-ids-and-with-default-write-concern (deftest insert-a-batch-of-basic-documents-without-ids-and-with-default-write-concern
(let [collection "people" (let [collection "people"
docs [{ :name "Joe", :age 30 }, { :name "Paul", :age 27 }]] docs [{:name "Joe" :age 30} {:name "Paul" :age 27}]]
(is (monger.result/ok? (mgcol/insert-batch "people" docs))) (is (monger.result/ok? (mc/insert-batch "people" docs)))
(is (= 2 (mgcol/count collection))))) (is (= 2 (mc/count collection)))))
(deftest insert-a-batch-of-basic-documents-without-ids-and-with-explicit-write-concern (deftest insert-a-batch-of-basic-documents-without-ids-and-with-explicit-write-concern
(let [collection "people" (let [collection "people"
docs [{ :name "Joe", :age 30 }, { :name "Paul", :age 27 }]] docs [{:name "Joe" :age 30} {:name "Paul" :age 27}]]
(is (monger.result/ok? (mgcol/insert-batch "people" docs WriteConcern/NORMAL))) (is (monger.result/ok? (mc/insert-batch "people" docs WriteConcern/NORMAL)))
(is (= 2 (mgcol/count collection))))) (is (= 2 (mc/count collection)))))
(deftest insert-a-batch-of-basic-documents-with-explicit-database-without-ids-and-with-explicit-write-concern (deftest insert-a-batch-of-basic-documents-with-explicit-database-without-ids-and-with-explicit-write-concern
(let [collection "people" (let [collection "people"
docs [{ :name "Joe", :age 30 }, { :name "Paul", :age 27 }]] docs [{:name "Joe" :age 30} {:name "Paul" :age 27}]]
(dotimes [n 44] (dotimes [n 44]
(is (monger.result/ok? (mgcol/insert-batch monger.core/*mongodb-database* "people" docs WriteConcern/NORMAL)))) (is (monger.result/ok? (mc/insert-batch monger.core/*mongodb-database* "people" docs WriteConcern/NORMAL))))
(is (= 88 (mgcol/count collection))))) (is (= 88 (mc/count collection)))))