Plaid portfolio sync algorithm and calculation improvements (#1526)

* Start tests rework

* Cash balance on schema

* Add reverse syncer

* Reverse balance sync with holdings

* Reverse holdings sync

* Reverse holdings sync should work with only trade entries

* Consolidate brokerage cash

* Add forward sync option

* Update new balance info after syncs

* Intraday balance calculator and sync fixes

* Show only balance for trade entries

* Tests passing

* Update Gemfile.lock

* Cleanup, performance improvements

* Remove account reloads for reliable sync outputs

* Simplify valuation view logic

* Special handling for Plaid cash holding
This commit is contained in:
Zach Gollwitzer
2024-12-10 17:41:20 -05:00
committed by GitHub
parent a59ca5b7c6
commit 49c353e10c
72 changed files with 1152 additions and 1046 deletions

View File

@@ -8,7 +8,7 @@ class TradesTest < ApplicationSystemTestCase
@account = accounts(:investment)
visit_account_trades
visit_account_portfolio
Security.stubs(:search).returns([
Security.new(
@@ -66,10 +66,7 @@ class TradesTest < ApplicationSystemTestCase
private
def open_new_trade_modal
within "[data-testid='activity-menu']" do
click_on "New"
click_on "New transaction"
end
click_on "New transaction"
end
def within_trades(&block)
@@ -77,6 +74,10 @@ class TradesTest < ApplicationSystemTestCase
end
def visit_account_trades
visit account_path(@account, tab: "activity")
end
def visit_account_portfolio
visit account_path(@account)
end