;; updates score for player "sam" if it exists; creates a new document otherwise
(mc/update db "scores" {:player "sam"} {:score 1088} {:upsert true})
(ns monger-test.core(:require [monger.core :as mg] [monger.collection :as mc]))
(def conn (mg/connect))(def db (mg/get-db conn "monger-test"))
(defn update-or-create [user] (mc/upsert db "users" {:username user} { :flavour "vanilla" }))
(defn all-users [] (mc/find-maps db "users"))
(defn foo "I would expect to get only one user" [] (update-or-create "Joe") (update-or-create "Joe") (println (all-users)) )
({:_id #<ObjectId 54e33b7a5a4847fc7da4af65>, :flavour vanilla} {:_id #<ObjectId 54e33b7a5a4847fc7da4af66>, :flavour vanilla})