Files
integreat/test/clj/auto_ap/integration/graphql/transaction_rules.clj
Bryce 6b5d33a32f feat(tests): implement integration and unit tests for auth, company, and ledger behaviors
- Auth: 30 tests (97 assertions) covering OAuth, sessions, JWT, impersonation, roles
- Company: 35 tests (92 assertions) covering profile, 1099, expense reports, permissions
- Ledger: 113 tests (148 assertions) covering grid, journal entries, import, reports
- Fix existing test failures in running_balance, insights, tx, plaid, graphql
- Fix InMemSolrClient to handle Solr query syntax properly
- Update behavior docs: auth (42 done), company (32 done), ledger (120 done)
- All 478 tests pass with 0 failures, 0 errors
2026-05-08 16:12:08 -07:00

23 lines
1.3 KiB
Clojure

(ns auto-ap.integration.graphql.transaction-rules
(:require
[auto-ap.graphql.transaction-rules :as sut2]
[auto-ap.integration.util
:refer [setup-test-data test-transaction test-transaction-rule wrap-setup admin-token]]
[clojure.test :as t :refer [deftest testing use-fixtures is]]))
(use-fixtures :each wrap-setup)
(deftest get-transaction-rule-matches
(testing "Should find a single rule that matches a transaction"
(let [{:strs [transaction-id
transaction-rule-id]} (setup-test-data [(test-transaction
:db/id "transaction-id"
:transaction/description-original "Disneyland")
(test-transaction-rule
:db/id "transaction-rule-id"
:transaction-rule/description ".*")])]
(is (= [transaction-rule-id] (->> (sut2/get-transaction-rule-matches {:id (admin-token)}
{:transaction_id transaction-id}
nil)
(map :id)))))))