diff --git a/deps.edn b/deps.edn index df5ed63..6cc599e 100644 --- a/deps.edn +++ b/deps.edn @@ -19,12 +19,21 @@ org.mariadb.jdbc/mariadb-java-client {:mvn/version "2.5.4"} mysql/mysql-connector-java {:mvn/version "8.0.19"} org.postgresql/postgresql {:mvn/version "42.2.10"} - com.opentable.components/otj-pg-embedded {:mvn/version "0.13.3"} - com.impossibl.pgjdbc-ng/pgjdbc-ng {:mvn/version "0.8.3"} + io.zonky.test/embedded-postgres {:mvn/version "1.2.6"} + io.zonky.test.postgres/embedded-postgres-binaries-darwin-amd64 {:mvn/version "12.2.0"} + io.zonky.test.postgres/embedded-postgres-binaries-linux-amd64 {:mvn/version "12.2.0"} + io.zonky.test.postgres/embedded-postgres-binaries-windows-amd64 {:mvn/version "12.2.0"} org.xerial/sqlite-jdbc {:mvn/version "3.30.1"} com.microsoft.sqlserver/mssql-jdbc {:mvn/version "8.2.1.jre8"} ;; supplementary test stuff - org.slf4j/slf4j-nop {:mvn/version "1.7.30"}}} + ;; use log4j 2.x: + org.apache.logging.log4j/log4j-api {:mvn/version "2.13.3"} + ;; bridge into log4j: + org.apache.logging.log4j/log4j-1.2-api {:mvn/version "2.13.3"} + org.apache.logging.log4j/log4j-jcl {:mvn/version "2.13.3"} + org.apache.logging.log4j/log4j-jul {:mvn/version "2.13.3"} + org.apache.logging.log4j/log4j-slf4j-impl {:mvn/version "2.13.3"}} + :jvm-opts ["-Dlog4j2.configurationFile=log4j2-info.properties"]} :runner {:extra-deps {com.cognitect/test-runner {:git/url "https://github.com/cognitect-labs/test-runner" diff --git a/test/log4j2-info.properties b/test/log4j2-info.properties new file mode 100644 index 0000000..a3bc4d3 --- /dev/null +++ b/test/log4j2-info.properties @@ -0,0 +1,28 @@ +# Sean's normal mode, shows INFO and above, with highlighting: +rootLogger.level = info +rootLogger.appenderRef.stdout.ref = STDOUT + +appender.console.type = Console +appender.console.name = STDOUT +appender.console.layout.type = PatternLayout +appender.console.layout.pattern = [%c] %highlight{%m}%n + +# I do not care about any of c3p0's INFO messages... +logger.c3p0.name = com.mchange.v2 +logger.c3p0.level = warn +logger.c3p0.appenderRef.stdout.ref = STDOUT + +# ...nor HikariCP... +logger.hikari.name = com.zaxxer.hikari +logger.hikari.level = warn +logger.hikari.appenderRef.stdout.ref = STDOUT + +# ...nor embedded HSQLDB... +logger.hsqldb.name = hsqldb.db +logger.hsqldb.level = warn +logger.hsqldb.appenderRef.stdout.ref = STDOUT + +# ...nor embedded PostgreSQL... +logger.postgres.name = io.zonky.test.db.postgres.embedded +logger.postgres.level = warn +logger.postgres.appenderRef.stdout.ref = STDOUT diff --git a/test/next/jdbc_test.clj b/test/next/jdbc_test.clj index 65217bd..5fb5ecd 100644 --- a/test/next/jdbc_test.clj +++ b/test/next/jdbc_test.clj @@ -8,7 +8,7 @@ [next.jdbc.connection :as c] [next.jdbc.test-fixtures :refer [with-test-db db ds column default-options - derby? mssql? mysql? postgres?]] + derby? jtds? mssql? mysql? postgres?]] [next.jdbc.prepare :as prep] [next.jdbc.result-set :as rs] [next.jdbc.specs :as specs]) @@ -302,9 +302,12 @@ VALUES ('Pear', 'green', 49, 47) :else (is (= {} etc))) (is (instance? javax.sql.DataSource ds)) (is (str/index-of (pr-str ds) (str "jdbc:" - (if (mssql?) - "sqlserver" ; mssql is the alias - (:dbtype (db)))))) + (cond (jtds?) + "jtds:server" + (mssql?) + "sqlserver" + :else + (:dbtype (db)))))) ;; checks get-datasource on a DataSource is identity (is (identical? ds (jdbc/get-datasource ds))) (with-open [con (jdbc/get-connection ds {})]