Skip to content

Commit e552143

Browse files
committed
Update duct.database/sql to 0.3.0
Change Boundary from holding a db-spec to holding a DataSource.
1 parent db01079 commit e552143

File tree

3 files changed

+17
-20
lines changed

3 files changed

+17
-20
lines changed

project.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
:license {:name "Eclipse Public License"
55
:url "http://www.eclipse.org/legal/epl-v10.html"}
66
:dependencies [[org.clojure/clojure "1.11.4"]
7-
[org.duct-framework/database.sql "0.2.0"]
7+
[org.duct-framework/database.sql "0.3.0"]
88
[org.duct-framework/logger "0.4.0"]
99
[hikari-cp "3.1.0"]
1010
[integrant "0.13.1"]

src/duct/database/sql/hikaricp.clj

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,11 @@
4242

4343
(defmethod ig/init-key :duct.database.sql/hikaricp
4444
[_ {:keys [logger connection-uri jdbc-url] :as options}]
45-
(sql/->Boundary {:datasource
46-
(-> (dissoc options :logger)
47-
(cond-> (and (nil? jdbc-url) connection-uri)
48-
(assoc :jdbc-url connection-uri))
49-
(hikari-cp/make-datasource)
50-
(cond-> logger (wrap-logger logger)))}))
51-
52-
(defmethod ig/halt-key! :duct.database.sql/hikaricp [_ {:keys [spec]}]
53-
(let [ds (unwrap-logger (:datasource spec))]
54-
(hikari-cp/close-datasource ds)))
45+
(sql/->Boundary (-> (dissoc options :logger)
46+
(cond-> (and (nil? jdbc-url) connection-uri)
47+
(assoc :jdbc-url connection-uri))
48+
(hikari-cp/make-datasource)
49+
(cond-> logger (wrap-logger logger)))))
50+
51+
(defmethod ig/halt-key! :duct.database.sql/hikaricp [_ {:keys [datasource]}]
52+
(hikari-cp/close-datasource (unwrap-logger datasource)))

test/duct/database/sql/hikaricp_test.clj

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
system (ig/init config)
2424
hikaricp (::sql/hikaricp system)]
2525
(is (instance? duct.database.sql.Boundary hikaricp))
26-
(let [datasource (-> hikaricp :spec :datasource)]
26+
(let [datasource (:datasource hikaricp)]
2727
(is (instance? javax.sql.DataSource datasource))
2828
(is (not (closed? datasource)))
2929
(ig/halt! system)
@@ -34,7 +34,7 @@
3434
system (ig/init config)
3535
hikaricp (::sql/hikaricp system)]
3636
(is (instance? duct.database.sql.Boundary hikaricp))
37-
(let [datasource (-> hikaricp :spec :datasource)]
37+
(let [datasource (:datasource hikaricp)]
3838
(is (instance? javax.sql.DataSource datasource))
3939
(is (not (closed? datasource)))
4040
(ig/halt! system)
@@ -48,14 +48,14 @@
4848
system (ig/init config)
4949
hikaricp (::sql/hikaricp system)]
5050
(is (instance? duct.database.sql.Boundary hikaricp))
51-
(let [datasource (-> hikaricp :spec :datasource)]
51+
(let [datasource (:datasource hikaricp)]
5252
(is (instance? javax.sql.DataSource datasource))
5353
(is (not (closed? datasource)))
5454
(ig/halt! system)
5555
(is (closed? datasource))))))
5656

5757
(deftest execute-test
58-
(let [spec (:spec (ig/init-key ::sql/hikaricp {:jdbc-url "jdbc:sqlite:"}))]
58+
(let [spec (ig/init-key ::sql/hikaricp {:jdbc-url "jdbc:sqlite:"})]
5959
(jdbc/execute! spec ["CREATE TABLE foo (id INT)"])
6060
(jdbc/db-do-commands spec ["INSERT INTO foo VALUES (1)" "INSERT INTO foo VALUES (2)"])
6161
(is (= (jdbc/query spec ["SELECT * FROM foo"]) [{:id 1} {:id 2}]))))
@@ -72,10 +72,9 @@
7272
elapsed)
7373

7474
(deftest logging-test
75-
(let [logs (atom [])
76-
logger (->AtomLogger logs)
77-
hikaricp (ig/init-key ::sql/hikaricp {:jdbc-url "jdbc:sqlite:" :logger logger})
78-
spec (:spec hikaricp)]
75+
(let [logs (atom [])
76+
logger (->AtomLogger logs)
77+
spec (ig/init-key ::sql/hikaricp {:jdbc-url "jdbc:sqlite:" :logger logger})]
7978
(jdbc/execute! spec ["CREATE TABLE foo (id INT, body TEXT)"])
8079
(jdbc/db-do-commands spec ["INSERT INTO foo VALUES (1, 'a')"
8180
"INSERT INTO foo VALUES (2, 'b')"])
@@ -95,5 +94,5 @@
9594
[:info ::sql/query
9695
{:query ["SELECT * FROM foo WHERE id = ? AND body = ?" 1 "a"]}]]))
9796
(is (not (.isClosed (unwrap-logger (:datasource spec)))))
98-
(ig/halt-key! ::sql/hikaricp hikaricp)
97+
(ig/halt-key! ::sql/hikaricp spec)
9998
(is (closed? (:datasource spec)))))

0 commit comments

Comments
 (0)