|
1 | 1 | (ns duct.module.sql-test |
2 | | - (:require [clojure.test :refer :all] |
3 | | - [duct.core :as core] |
| 2 | + (:require [clojure.test :refer [deftest is testing]] |
4 | 3 | [duct.module.sql :as sql] |
5 | 4 | [integrant.core :as ig])) |
6 | 5 |
|
7 | | -(core/load-hierarchy) |
8 | | - |
9 | | -(def base-config |
10 | | - {:duct.module/sql {:database-url "jdbc:sqlite:"}}) |
| 6 | +(ig/load-hierarchy) |
11 | 7 |
|
12 | 8 | (deftest module-test |
13 | | - (testing "blank config" |
| 9 | + (testing "main config" |
14 | 10 | (is (= {:duct.database.sql/hikaricp |
15 | | - {:jdbc-url "jdbc:sqlite:" |
| 11 | + {:jdbcUrl "jdbc:sqlite:" |
16 | 12 | :logger (ig/ref :duct/logger)} |
17 | 13 | :duct.migrator/ragtime |
18 | 14 | {:database (ig/ref :duct.database/sql) |
19 | 15 | :logger (ig/ref :duct/logger) |
20 | 16 | :strategy :raise-error |
21 | | - :migrations []}} |
22 | | - (core/build-config base-config)))) |
| 17 | + :migrations-file "migrations.edn"}} |
| 18 | + (-> {:duct.module/sql {}} |
| 19 | + (ig/expand (ig/deprofile [:main])) |
| 20 | + (ig/bind {'jdbc-url "jdbc:sqlite:"}))))) |
23 | 21 |
|
24 | | - (testing "development config" |
25 | | - (let [config (assoc base-config :duct.profile/base |
26 | | - {:duct.core/environment :development})] |
27 | | - (is (= {:duct.core/environment :development |
28 | | - :duct.database.sql/hikaricp |
29 | | - {:jdbc-url "jdbc:sqlite:" |
30 | | - :logger (ig/ref :duct/logger)} |
31 | | - :duct.migrator/ragtime |
32 | | - {:database (ig/ref :duct.database/sql) |
33 | | - :logger (ig/ref :duct/logger) |
34 | | - :strategy :rebase |
35 | | - :migrations []}} |
36 | | - (core/build-config config))))) |
| 22 | + (testing "repl config" |
| 23 | + (is (= {:duct.database.sql/hikaricp |
| 24 | + {:jdbcUrl "jdbc:sqlite:" |
| 25 | + :logger (ig/ref :duct/logger)} |
| 26 | + :duct.migrator/ragtime |
| 27 | + {:database (ig/ref :duct.database/sql) |
| 28 | + :logger (ig/ref :duct/logger) |
| 29 | + :strategy :rebase |
| 30 | + :migrations-file "migrations.edn"}} |
| 31 | + (-> {:duct.module/sql {}} |
| 32 | + (ig/expand (ig/deprofile [:repl])) |
| 33 | + (ig/bind {'jdbc-url "jdbc:sqlite:"}))))) |
37 | 34 |
|
38 | 35 | (testing "test config" |
39 | | - (let [config (assoc base-config :duct.profile/base |
40 | | - {:duct.core/environment :test})] |
41 | | - (is (= {:duct.core/environment :test |
42 | | - :duct.database.sql/hikaricp |
43 | | - {:jdbc-url "jdbc:sqlite:" |
44 | | - :logger (ig/ref :duct/logger)} |
45 | | - :duct.migrator/ragtime |
46 | | - {:database (ig/ref :duct.database/sql) |
47 | | - :logger (ig/ref :duct/logger) |
48 | | - :strategy :rebase |
49 | | - :migrations []}} |
50 | | - (core/build-config config))))) |
51 | | - |
52 | | - (testing "config with existing data" |
53 | | - (let [config (assoc base-config :duct.profile/base |
54 | | - {:duct.migrator/ragtime {:strategy :rebase}})] |
55 | | - (is (= {:duct.database.sql/hikaricp |
56 | | - {:jdbc-url "jdbc:sqlite:" |
57 | | - :logger (ig/ref :duct/logger)} |
58 | | - :duct.migrator/ragtime |
59 | | - {:database (ig/ref :duct.database/sql) |
60 | | - :logger (ig/ref :duct/logger) |
61 | | - :strategy :rebase |
62 | | - :migrations []}} |
63 | | - (core/build-config config)))))) |
| 36 | + (is (= {:duct.database.sql/hikaricp |
| 37 | + {:jdbcUrl "jdbc:sqlite:" |
| 38 | + :logger (ig/ref :duct/logger)} |
| 39 | + :duct.migrator/ragtime |
| 40 | + {:database (ig/ref :duct.database/sql) |
| 41 | + :logger (ig/ref :duct/logger) |
| 42 | + :strategy :rebase |
| 43 | + :migrations-file "migrations.edn"}} |
| 44 | + (-> {:duct.module/sql {}} |
| 45 | + (ig/expand (ig/deprofile [:test])) |
| 46 | + (ig/bind {'jdbc-url "jdbc:sqlite:"})))))) |
0 commit comments