Skip to content

Commit d89873b

Browse files
committed
Problem: test suite fails since introducing the indexer
Solution: Extend the test-helpers so that they populate the indexes.
1 parent 52ef5a2 commit d89873b

File tree

4 files changed

+34
-29
lines changed

4 files changed

+34
-29
lines changed

src/clojurians_log/repl.clj

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -205,13 +205,13 @@
205205
(time (clojurians-log.db.queries/user-names db #{"U2TUBBPNU"}))
206206
(time (clojurians-log.db.queries/channel-days db "clojurescript"))
207207

208-
nil)
209-
210-
"Elapsed time: 18.166254 msecs"
211-
"Elapsed time: 631.458841 msecs"
212-
"Elapsed time: 1.568807 msecs"
213-
"Elapsed time: 16.425878 msecs"
214-
"Elapsed time: 1.126005 msecs"
215-
"Elapsed time: 1535.355001 msecs"
216-
"Elapsed time: 2205.20762 msecs"
217-
))
208+
nil))
209+
210+
"Elapsed time: 18.166254 msecs"
211+
"Elapsed time: 631.458841 msecs"
212+
"Elapsed time: 1.568807 msecs"
213+
"Elapsed time: 16.425878 msecs"
214+
"Elapsed time: 1.126005 msecs"
215+
"Elapsed time: 1535.355001 msecs"
216+
"Elapsed time: 2205.20762 msecs"
217+
)

test/clojurians_log/db/queries_test.clj

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@
99
(deftest channel-list-test
1010
(testing "without arg - return all channels"
1111
(let [[conn db] (test-db)]
12-
(is (= (channel-list db)
13-
[#:channel{:slack-id "C03S1KBA2", :name "clojure"}
14-
#:channel{:slack-id "C03S1L9DN", :name "clojurescript"}]))))
12+
(is (= [#:channel{:slack-id "C03S1KBA2", :name "clojure"}
13+
#:channel{:slack-id "C03S1L9DN", :name "clojurescript"}]
14+
(channel-list db)))))
1515

1616
(testing "returns only channels with messages on the given day, includes message-count"
1717
(let [[conn db] (test-db "quiet-channels")]
18-
(is (= (channel-list db "2018-02-03")
19-
[#:channel{:slack-id "C7YF1SBT3", :name "reitit", :message-count 3}
20-
#:channel{:slack-id "C05006WDW", :name "jobs", :message-count 1}])))))
18+
(is (= [#:channel{:slack-id "C05006WDW", :name "jobs", :message-count 1}
19+
#:channel{:slack-id "C7YF1SBT3", :name "reitit", :message-count 3}]
20+
(channel-list db "2018-02-03"))))))
2121

2222
(deftest threaded-messages-test
2323
(let [[conn db] (test-db "threaded-messages")
@@ -50,15 +50,15 @@
5050
;; The following tests should hold given the contents of threaded-messages.edn
5151
;; To see how the data was generated, see repl/test_data.clj.
5252
(testing "returns messages for the expected threads"
53-
(is (= parents-ts
54-
#{"1517995093.000487" "1518040988.000079"}))
53+
(is (= #{"1517995093.000487" "1518040988.000079"}
54+
parents-ts))
5555

5656
;; Does not contain message for threads not starting on the target date
5757
(is (not (contains? parents-ts "1517924158.000577"))))
5858

5959
(testing "returns the expected messages"
60-
(is (= thread-messages-ts
61-
#{"1518008583.000370" "1518058291.000073" "1518095027.000404" "1518095379.000012"}))
60+
(is (= #{"1518008583.000370" "1518058291.000073" "1518095027.000404" "1518095379.000012"}
61+
thread-messages-ts))
6262

6363
;; Should exclude non-threaded message from the same day
6464
(is (not (contains? thread-messages-ts "1518034517.000637")))

test/clojurians_log/test_helper.clj

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
(ns clojurians-log.test-helper
22
(:require [clojure.java.io :as io]
33
[clojurians-log.db.schema :as schema]
4+
[clojurians-log.db.queries :as queries]
45
[clojurians-log.xml2hiccup :as x2h]
56
[datomic.api :as d]
67
[net.cgrand.enlive-html :as enlive]
@@ -35,7 +36,9 @@
3536
([fixture-name]
3637
(let [conn (test-conn)]
3738
(transact-txs conn (slurp-fixture fixture-name))
38-
[conn (d/db conn)])))
39+
(let [db (d/db conn)]
40+
(queries/build-indexes! db)
41+
[conn (d/db conn)]))))
3942

4043
(defn html->hiccup [html]
4144
(-> html
@@ -64,8 +67,10 @@
6467
(assoc-in [:datomic :uri] (str "datomic:mem:" (gensym "test_db")))
6568
(dissoc :http) ;; don't actually start a http server
6669
(dissoc :server-info) ;; silence http server startup message
67-
component/start-system)) ;; start the whole system
70+
component/start-system))
6871

6972
(defn system-load-fixture! [system fixture-name]
7073
(transact-txs (system-db-conn system)
71-
(slurp-fixture fixture-name)))
74+
(slurp-fixture fixture-name))
75+
(queries/build-indexes! (system-db system))
76+
nil)

test/clojurians_log/views_test.clj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99

1010
(deftest page-head-test
1111
(testing "It renders the page title"
12-
(is (= (html-select-1 (page-head {:data/title "Hello, world"}) [:head :title])
13-
[:title "Hello, world"]))))
12+
(is (= [:title "Hello, world"]
13+
(html-select-1 (page-head {:data/title "Hello, world"}) [:head :title])))))
1414

1515
(deftest routes-test
1616
(testing "All known routes should return http ok (200)"
@@ -37,7 +37,7 @@
3737
;; TODO Some urls responds quite slowly (around 500ms)
3838
(doseq [url urls
3939
:let [response (ring-handler (mock/request :get url))]]
40-
(is (= (:status response) 200) url)))))
40+
(is (= 200 (:status response)) url)))))
4141

4242
(deftest log-page-test
4343
(let [log-page (-> {:data/date "2018-01-02"
@@ -49,10 +49,10 @@
4949
:response/html)]
5050

5151
(testing "It links to the front page and to prev/next days"
52-
(is (= (html-select log-page [:a])
53-
[[:a {:href "/"} "Clojurians"]
52+
(is (= [[:a {:href "/"} "Clojurians"]
5453
[:a {:href "/clojure/2018-01-01"} [:div.day-prev "<"]]
55-
[:a {:href "/clojure/2018-01-03"} [:div.day-next ">"]]]))))
54+
[:a {:href "/clojure/2018-01-03"} [:div.day-next ">"]]]
55+
(html-select log-page [:a])))))
5656

5757
(let [system (h/test-system)
5858

0 commit comments

Comments
 (0)