Skip to content

fix(sell): re-quote via the sell price endpoint on currency change#680

Open
joshuakrueger-dfx wants to merge 1 commit into
RealUnitCH:developfrom
joshuakrueger-dfx:joshua/fix-657-p4s1-sell-endpoint
Open

fix(sell): re-quote via the sell price endpoint on currency change#680
joshuakrueger-dfx wants to merge 1 commit into
RealUnitCH:developfrom
joshuakrueger-dfx:joshua/fix-657-p4s1-sell-endpoint

Conversation

@joshuakrueger-dfx
Copy link
Copy Markdown
Collaborator

Addresses Issue #657 — Part 4, finding S1 (HIGH).

Problem

onCurrencyChanged called getBuyPrice and rendered totalCost as the sell "You receive" amount — a buy-side quote on the Sell screen, inconsistent with onSharesChanged which quotes via getSellPrice/estimatedAmount.

Fix

Switch the currency-change re-quote to getSellPrice + estimatedAmount.

Note on the existing test

The prior unit test pinned getBuyPrice as "likely on purpose" — that assumption contradicts the sell-conversion path and is rewritten to assert the sell endpoint (verify(getSellPrice) + verifyNever(getBuyPrice)).

Tests (RED→GREEN, proven)

Rewritten contract test fails on the old code, passes with the fix. Suite 14/14 green, flutter analyze clean.

🤖 Big Brother fleet flagged + operator hand-finish. Ref #657.

onCurrencyChanged called getBuyPrice and rendered totalCost as the sell
"You receive" amount — a buy-side quote on the Sell screen, inconsistent with
onSharesChanged (which quotes via getSellPrice/estimatedAmount). Switch to the
sell endpoint so the displayed amount matches what the user actually receives.

The previous unit test pinned the getBuyPrice call as "likely on purpose"; that
assumption was wrong (it contradicts the sell-conversion path) and is rewritten
to assert the sell endpoint.

Regression: test/screens/sell/cubits/sell_converter_cubit_test.dart

Issue RealUnitCH#657 — Part 4, finding S1 (HIGH).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant