Files
skirmish/test/clj/skirmish/broker/db_test.clj
T
2018-11-12 14:50:56 -05:00

25 lines
1.1 KiB
Clojure

(ns skirmish.broker.db-test
(:require [midje.sweet :refer :all]
[orchestra.spec.test :as st]
[datomic.api :as d]
[skirmish.broker.db :refer [create-connection]]
[skirmish.broker.broker :refer [create-account]]))
(st/instrument)
(defn create-conn []
(let [mem-url "datomic:mem://skirmish"]
(d/delete-database mem-url)
(create-connection mem-url)))
(facts "about the db functions."
(fact "should be able to create new users"
(let [conn (create-conn)
email "foo@gmail.com"
account-id #uuid"dc0d1123-e659-4e8a-b38b-ece520f4c4d0"
account (create-account account-id :dapm)
_ @(d/transact conn [[:skirmish.broker.user/create-user email account]])
db (d/db conn)
user (d/pull db '[* {:skirmish.broker.user/accounts [*]}] [:skirmish.broker.user/email email])]
(:skirmish.broker.user/email user) => email
(-> user :skirmish.broker.user/accounts first :skirmish.broker.account/id) => account-id)))