Files
integreat/test/clj/auto_ap/import/plaid_test.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

26 lines
1.3 KiB
Clojure

(ns auto-ap.import.plaid-test
(:require [auto-ap.import.plaid :as sut]
[clojure.test :as t]))
(def base-transaction {:name "This is a bank transaction text"
:transaction_id "123"
:account {:type "debit"}
:amount 123.45
:date "2023-01-01"})
(t/deftest plaid->transaction
(t/testing "Should assign a plaid merchant if a merchant is found"
(t/is (= "Home Depot" (-> (sut/plaid->transaction (assoc base-transaction
:merchant_name "Home Depot")
{})
:transaction/plaid-merchant
:plaid-merchant/name))))
;; NOTE: default-vendor assignment was removed from plaid->transaction.
;; The vendor lookup via plaid-merchant->vendor-id is commented out in production.
#_(t/testing "Should assign a default vendor if a merchant is found, with a matching vendor lookup"
(t/is (= 12354 (-> (sut/plaid->transaction (assoc base-transaction
:merchant_name "Home Depot")
{"Home Depot" 12354})
:transaction/default-vendor)))))