From e5af694cc755483b7ca853d8a4ff484d74b8c9a4 Mon Sep 17 00:00:00 2001 From: "Michael S. Klishin" Date: Sun, 29 Jan 2012 06:04:11 +0400 Subject: [PATCH] Support explicit database parameter for monger.collection/insert --- src/monger/collection.clj | 7 +++++-- test/monger/test/collection.clj | 7 +++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/monger/collection.clj b/src/monger/collection.clj index ac73457..ccb18e1 100644 --- a/src/monger/collection.clj +++ b/src/monger/collection.clj @@ -32,11 +32,14 @@ (monger.collection/insert \"people\" { :name \"Joe\", :age 30, WriteConcern/SAFE }) " - ([^String collection, ^DBObject document] + ([^String collection ^DBObject document] (let [^DBCollection coll (.getCollection monger.core/*mongodb-database* collection)] (.insert ^DBCollection coll ^DBObject (to-db-object document) ^WriteConcern monger.core/*mongodb-write-concern*))) - ([^String collection, ^DBObject document, ^WriteConcern concern] + ([^String collection ^DBObject document ^WriteConcern concern] (let [^DBCollection coll (.getCollection monger.core/*mongodb-database* collection)] + (.insert ^DBCollection coll ^DBObject (to-db-object document) ^WriteConcern concern))) + ([^DB db ^String collection ^DBObject document ^WriteConcern concern] + (let [^DBCollection coll (.getCollection db collection)] (.insert ^DBCollection coll ^DBObject (to-db-object document) ^WriteConcern concern)))) diff --git a/test/monger/test/collection.clj b/test/monger/test/collection.clj index e25dfa2..0deffd9 100644 --- a/test/monger/test/collection.clj +++ b/test/monger/test/collection.clj @@ -30,6 +30,13 @@ (is (monger.result/ok? (mgcol/insert "people" doc))) (is (= 1 (mgcol/count collection))))) +(deftest insert-a-basic-document-with-explicitly-passed-database-without-id-and-with-default-write-concern + (let [collection "people" + doc { :name "Joe", :age 30 }] + (dotimes [n 5] + (is (monger.result/ok? (mgcol/insert monger.core/*mongodb-database* "people" doc WriteConcern/SAFE)))) + (is (= 5 (mgcol/count collection))))) + (deftest insert-a-basic-document-without-id-and-with-explicit-write-concern (let [collection "people" doc { :name "Joe", :age 30 }]