@@ -60,11 +60,15 @@ def test_run_once_uses_authoritative_core_holdings_broker(monkeypatch):
|
||||
projected_broker = object()
|
||||
authoritative_broker = object()
|
||||
unmanaged_store = object()
|
||||
auto_store = SimpleNamespace(apply_holding_mirror=lambda _command: False)
|
||||
captured = {}
|
||||
|
||||
def _capture(**kwargs):
|
||||
captured["broker"] = kwargs["broker"]
|
||||
captured["unmanaged_position_store"] = kwargs.get("unmanaged_position_store")
|
||||
captured["portfolio_items"] = kwargs.get("portfolio_items")
|
||||
captured["cost_basis_port"] = kwargs.get("cost_basis_port")
|
||||
captured["auto_reconcile_store"] = kwargs.get("auto_reconcile_store")
|
||||
return {}
|
||||
|
||||
monkeypatch.setattr(
|
||||
@@ -79,12 +83,17 @@ def test_run_once_uses_authoritative_core_holdings_broker(monkeypatch):
|
||||
slot_repo=object(),
|
||||
slot_service=SimpleNamespace(instance_key="inst-1"),
|
||||
unmanaged_position_store=unmanaged_store,
|
||||
cost_basis_port=read,
|
||||
auto_reconcile_store=auto_store, # type: ignore[arg-type]
|
||||
)
|
||||
sched._reconcile_slots = lambda _items: None
|
||||
|
||||
assert sched.run_once() is True
|
||||
assert captured["broker"] is authoritative_broker
|
||||
assert captured["unmanaged_position_store"] is unmanaged_store
|
||||
assert captured["portfolio_items"] == read.items
|
||||
assert captured["cost_basis_port"] is read
|
||||
assert captured["auto_reconcile_store"] is auto_store
|
||||
|
||||
|
||||
def test_swap_preserves_warning_for_carried_over_portfolio():
|
||||
|
||||
Reference in New Issue
Block a user