diff --git a/src/yesql/core.clj b/src/yesql/core.clj index 6257f7d..4e1cbb8 100644 --- a/src/yesql/core.clj +++ b/src/yesql/core.clj @@ -1,7 +1,8 @@ (ns yesql.core (:require [yesql.util :refer [slurp-from-classpath]] [yesql.generate :refer [generate-var]] - [yesql.queryfile-parser :refer [parse-tagged-queries]])) + [yesql.queryfile-parser :refer [parse-tagged-queries]] + [clojure.string :as str])) (defn defqueries "Defines several query functions, as defined in the given SQL file. @@ -47,7 +48,7 @@ (throw (Exception. "Missing an :as or a :refer"))) (let [current-ns (ns-name *ns*) ;; Keep this .sql file's defqueries in a predictable place: - target-ns (symbol (str "yesquire/" sql-file))] + target-ns (-> (str "yesquire/" sql-file) (str/replace #"/" ".") symbol)] `(do (ns-unalias *ns* '~as) (create-ns '~target-ns) diff --git a/test/yesql/core_test.clj b/test/yesql/core_test.clj index b752f07..89cca85 100644 --- a/test/yesql/core_test.clj +++ b/test/yesql/core_test.clj @@ -109,6 +109,10 @@ (expect var? #'combined/edge) +(expect first (combined/edge {} {:connection yesql.core-test/derby-db})) + (require-sql ["yesql/sample_files/combined_file.sql" :refer [the-time]]) (expect var? #'the-time) + +(expect first (the-time {} {:connection yesql.core-test/derby-db}))