All tests pass again.
This commit is contained in:
@@ -9,6 +9,13 @@
|
||||
|
||||
(deftest test-account-search
|
||||
(testing "It should find matching account names"
|
||||
(dc/transact conn {:tx-data [{:account/name "Food Research"
|
||||
:db/ident :client-specific-account
|
||||
:account/numeric-code 51100
|
||||
:account/search-terms "Food Research"
|
||||
:account/applicability :account-applicability/global
|
||||
:account/default-allowance :allowance/allowed}]})
|
||||
(sut/rebuild-search-index)
|
||||
(is (> (count (sut/search {:id (admin-token)}
|
||||
{:query "Food Research"}
|
||||
nil
|
||||
@@ -16,7 +23,7 @@
|
||||
0)))
|
||||
(testing "It should find exact matches by numbers"
|
||||
(is (= (count (sut/search {:id (admin-token)}
|
||||
{:query "5110"}
|
||||
{:query "51100"}
|
||||
nil
|
||||
))
|
||||
1)))
|
||||
@@ -27,10 +34,11 @@
|
||||
:account/search-terms "CLIENTSPECIFIC"
|
||||
:account/applicability :account-applicability/customized
|
||||
:account/default-allowance :allowance/allowed}]})
|
||||
(is (= 0 (count (sut/search {:id (admin-token)}
|
||||
{:query "CLIENTSPECIFIC"}
|
||||
nil
|
||||
))))
|
||||
(sut/rebuild-search-index)
|
||||
(is (= [] (sut/search {:id (admin-token)}
|
||||
{:query "CLIENTSPECIFIC"}
|
||||
nil
|
||||
)))
|
||||
|
||||
(testing "It should show up for the client specific version"
|
||||
(let [client-id (-> (dc/transact conn {:tx-data [{:client/name "CLIENT"
|
||||
@@ -41,6 +49,7 @@
|
||||
:account-client-override/search-terms "HELLOWORLD"}]}]})
|
||||
:tempids
|
||||
(get "client"))]
|
||||
(sut/rebuild-search-index)
|
||||
(is (= 1 (count (sut/search {:id (admin-token)}
|
||||
{:query "HELLOWORLD"
|
||||
:client_id client-id}
|
||||
@@ -76,6 +85,7 @@
|
||||
:account/default-allowance :allowance/warn
|
||||
:account/vendor-allowance :allowance/warn
|
||||
:account/invoice-allowance :allowance/warn}]})
|
||||
(sut/rebuild-search-index)
|
||||
(is (some? (:warning (first (sut/search {:id (admin-token)}
|
||||
{:query "WARNING"
|
||||
:allowance :global}
|
||||
@@ -97,10 +107,11 @@
|
||||
:account/default-allowance :allowance/admin-only
|
||||
:account/vendor-allowance :allowance/admin-only
|
||||
:account/invoice-allowance :allowance/admin-only}]})
|
||||
(sut/rebuild-search-index)
|
||||
(is (= 1 (count (sut/search {:id (admin-token)}
|
||||
{:query "ADMINONLY"}
|
||||
nil))))
|
||||
(is (= 0 (count (sut/search {:id (user-token 1)}
|
||||
(is (= 0 (count (sut/search {:id (user-token)}
|
||||
{:query "ADMINONLY"}
|
||||
nil)))))
|
||||
|
||||
@@ -120,6 +131,7 @@
|
||||
:db/id "vendor"}]})
|
||||
:tempids
|
||||
(get "vendor"))]
|
||||
(sut/rebuild-search-index)
|
||||
(is (= 0 (count (sut/search {:id (admin-token)}
|
||||
{:query "VENDORONLY"
|
||||
:allowance :invoice}
|
||||
@@ -130,5 +142,3 @@
|
||||
:allowance :invoice
|
||||
:vendor_id vendor-id}
|
||||
nil))))))))
|
||||
|
||||
|
||||
|
||||
@@ -1,20 +1,17 @@
|
||||
(ns auto-ap.integration.util
|
||||
(:require
|
||||
[auto-ap.datomic :refer [conn uri]]
|
||||
[clj-time.core :as time]
|
||||
[datomic.api :as dc]
|
||||
[auto-ap.datomic.migrate :as migrate])
|
||||
)
|
||||
(:require [datomic.client.api :as dc]
|
||||
[auto-ap.datomic :refer [client conn transact-schema]]
|
||||
[clj-time.core :as time]))
|
||||
|
||||
(defn wrap-setup
|
||||
[f]
|
||||
(with-redefs [auto-ap.datomic/uri "datomic:mem://datomic-transactor:4334/invoice"]
|
||||
(dc/create-database uri)
|
||||
(with-redefs [auto-ap.datomic/conn (dc/connect uri)]
|
||||
(migrate/migrate conn)
|
||||
(with-redefs [auto-ap.datomic/client (dc/client {:server-type :dev-local
|
||||
:system "dev"})]
|
||||
(dc/create-database client {:db-name "test"})
|
||||
(with-redefs [auto-ap.datomic/conn (dc/connect client {:db-name "test"})]
|
||||
(transact-schema conn)
|
||||
(f)
|
||||
(dc/delete-database uri))))
|
||||
|
||||
(dc/delete-database client {:db-name "test"}))))
|
||||
|
||||
(defn admin-token []
|
||||
{:user "TEST ADMIN"
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
(ns auto-ap.routes.invoice-test
|
||||
(:require
|
||||
[auto-ap.datomic :refer [conn]]
|
||||
[auto-ap.integration.util :refer [user-token wrap-setup]]
|
||||
[auto-ap.datomic.clients :refer [rebuild-search-index]]
|
||||
[auto-ap.integration.util :refer [admin-token wrap-setup]]
|
||||
[auto-ap.routes.invoices :as sut]
|
||||
[datomic.client.api :as dc]
|
||||
[clj-time.coerce :as coerce]
|
||||
[clojure.test :as t]))
|
||||
[clojure.test :as t]
|
||||
[datomic.client.api :as dc]))
|
||||
|
||||
(t/use-fixtures :each wrap-setup)
|
||||
|
||||
(def user (user-token))
|
||||
(def user (admin-token))
|
||||
|
||||
(def client {:client/code "ABC"
|
||||
:client/name "ABC"
|
||||
@@ -39,6 +40,7 @@
|
||||
(t/deftest import-uploaded-invoices
|
||||
(t/testing "It should import one"
|
||||
(dc/transact conn {:tx-data [client expense-account vendor]})
|
||||
(rebuild-search-index)
|
||||
|
||||
(t/is (= 0 (invoice-count-for-client [:client/code "ABC"])))
|
||||
(sut/import-uploaded-invoice user [(assoc invoice :customer-identifier "ABC")])
|
||||
|
||||
Reference in New Issue
Block a user