Add jTDS testing

This commit is contained in:
Sean Corfield 2020-06-06 17:06:11 -07:00
parent 73aea0ceef
commit 5e98c828a5
3 changed files with 47 additions and 7 deletions

View file

@ -19,12 +19,21 @@
org.mariadb.jdbc/mariadb-java-client {:mvn/version "2.5.4"} org.mariadb.jdbc/mariadb-java-client {:mvn/version "2.5.4"}
mysql/mysql-connector-java {:mvn/version "8.0.19"} mysql/mysql-connector-java {:mvn/version "8.0.19"}
org.postgresql/postgresql {:mvn/version "42.2.10"} org.postgresql/postgresql {:mvn/version "42.2.10"}
com.opentable.components/otj-pg-embedded {:mvn/version "0.13.3"} io.zonky.test/embedded-postgres {:mvn/version "1.2.6"}
com.impossibl.pgjdbc-ng/pgjdbc-ng {:mvn/version "0.8.3"} 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"} org.xerial/sqlite-jdbc {:mvn/version "3.30.1"}
com.microsoft.sqlserver/mssql-jdbc {:mvn/version "8.2.1.jre8"} com.microsoft.sqlserver/mssql-jdbc {:mvn/version "8.2.1.jre8"}
;; supplementary test stuff ;; 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 :runner
{:extra-deps {com.cognitect/test-runner {:extra-deps {com.cognitect/test-runner
{:git/url "https://github.com/cognitect-labs/test-runner" {:git/url "https://github.com/cognitect-labs/test-runner"

View file

@ -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

View file

@ -8,7 +8,7 @@
[next.jdbc.connection :as c] [next.jdbc.connection :as c]
[next.jdbc.test-fixtures :refer [with-test-db db ds column [next.jdbc.test-fixtures :refer [with-test-db db ds column
default-options default-options
derby? mssql? mysql? postgres?]] derby? jtds? mssql? mysql? postgres?]]
[next.jdbc.prepare :as prep] [next.jdbc.prepare :as prep]
[next.jdbc.result-set :as rs] [next.jdbc.result-set :as rs]
[next.jdbc.specs :as specs]) [next.jdbc.specs :as specs])
@ -302,8 +302,11 @@ VALUES ('Pear', 'green', 49, 47)
:else (is (= {} etc))) :else (is (= {} etc)))
(is (instance? javax.sql.DataSource ds)) (is (instance? javax.sql.DataSource ds))
(is (str/index-of (pr-str ds) (str "jdbc:" (is (str/index-of (pr-str ds) (str "jdbc:"
(if (mssql?) (cond (jtds?)
"sqlserver" ; mssql is the alias "jtds:server"
(mssql?)
"sqlserver"
:else
(:dbtype (db)))))) (:dbtype (db))))))
;; checks get-datasource on a DataSource is identity ;; checks get-datasource on a DataSource is identity
(is (identical? ds (jdbc/get-datasource ds))) (is (identical? ds (jdbc/get-datasource ds)))