diff --git a/src/clojure/monger/gridfs.clj b/src/clojure/monger/gridfs.clj index 9358f29..63adf55 100644 --- a/src/clojure/monger/gridfs.clj +++ b/src/clojure/monger/gridfs.clj @@ -116,7 +116,7 @@ (defn ^GridFSInputFile make-input-file [^GridFS fs input] - (.createFile fs (to-input-stream input))) + (.createFile fs (to-input-stream input) true)) (defmacro store [^GridFSInputFile input & body] diff --git a/test/monger/test/gridfs_test.clj b/test/monger/test/gridfs_test.clj index e6c60e9..de632d0 100644 --- a/test/monger/test/gridfs_test.clj +++ b/test/monger/test/gridfs_test.clj @@ -78,6 +78,16 @@ (content-type "application/octet-stream")) (is (= 1 (count (gridfs/all-files fs)))))) + (deftest ^{:gridfs true} test-deleting-file-instance-on-disk-after-storing + (let [tmp-file (File/createTempFile "monger.test.gridfs" "test-deleting-file-instance-on-disk-after-storing") + _ (spit tmp-file "to be deleted")] + (is (= 0 (count (gridfs/all-files fs)))) + (store-file (make-input-file fs tmp-file) + (filename "test-deleting-file-instance-on-disk-after-storing") + (content-type "application/octet-stream")) + (is (= 1 (count (gridfs/all-files fs)))) + (is (.delete tmp-file)))) + (deftest ^{:gridfs true} test-finding-individual-files-on-gridfs