mirror of
https://github.com/we-promise/sure.git
synced 2026-04-07 14:31:25 +00:00
FIX AI categorization & Twelvedata currency (#354)
* FIX AI categorization * FIX twelve data API Looking at api docs we were using the wrong field, currency is in meta tag.
This commit is contained in:
@@ -45,9 +45,8 @@ class Family::AutoCategorizer
|
||||
category_id,
|
||||
source: "ai"
|
||||
)
|
||||
transaction.lock_attr!(:category_id)
|
||||
end
|
||||
|
||||
transaction.lock_attr!(:category_id)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -50,11 +50,9 @@ class Family::AutoMerchantDetector
|
||||
merchant_id,
|
||||
source: "ai"
|
||||
)
|
||||
|
||||
# We lock the attribute so that this Rule doesn't try to run again
|
||||
transaction.lock_attr!(:merchant_id)
|
||||
end
|
||||
|
||||
# We lock the attribute so that this Rule doesn't try to run again
|
||||
transaction.lock_attr!(:merchant_id)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -187,7 +187,7 @@ class Provider::TwelveData < Provider
|
||||
symbol: symbol,
|
||||
date: date.to_date,
|
||||
price: price,
|
||||
currency: parsed.dig("currency"),
|
||||
currency: parsed.dig("meta", "currency") || parsed.dig("currency"),
|
||||
exchange_operating_mic: exchange_operating_mic
|
||||
)
|
||||
end.compact
|
||||
|
||||
@@ -33,8 +33,9 @@ class Family::AutoCategorizerTest < ActiveSupport::TestCase
|
||||
assert_equal test_category, txn2.reload.category
|
||||
assert_nil txn3.reload.category
|
||||
|
||||
# After auto-categorization, all transactions are locked and no longer enrichable
|
||||
assert_equal 0, @account.transactions.reload.enrichable(:category_id).count
|
||||
# After auto-categorization, only successfully categorized transactions are locked
|
||||
# txn3 remains enrichable since it didn't get a category (allows retry)
|
||||
assert_equal 1, @account.transactions.reload.enrichable(:category_id).count
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
@@ -34,8 +34,9 @@ class Family::AutoMerchantDetectorTest < ActiveSupport::TestCase
|
||||
assert_equal "https://cdn.brandfetch.io/chipotle.com/icon/fallback/lettermark/w/40/h/40?c=123", txn2.reload.merchant.logo_url
|
||||
assert_nil txn3.reload.merchant
|
||||
|
||||
# After auto-detection, all transactions are locked and no longer enrichable
|
||||
assert_equal 0, @account.transactions.reload.enrichable(:merchant_id).count
|
||||
# After auto-detection, only successfully detected transactions are locked
|
||||
# txn3 remains enrichable since it didn't get a merchant (allows retry)
|
||||
assert_equal 1, @account.transactions.reload.enrichable(:merchant_id).count
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
Reference in New Issue
Block a user