1.6 KiB
epic, story, title, status
| epic | story | title | status |
|---|---|---|---|
| 3 | 3.5 | Multi-Currency Arithmetic | draft |
Epic 3 — Currency & Cryptocurrency
Goal: Real-time and historical currency conversion with 180+ fiat and 50+ crypto.
Story 3.5: Multi-Currency Arithmetic
As a CalcPad user, I want to add and subtract amounts in different currencies within a single expression, So that I can calculate totals across currencies without manual conversions.
Acceptance Criteria:
Given the expression $20 + €15 + £10 in BRL
When the engine evaluates it
Then each amount is converted to BRL using current rates
And the results are summed to produce a single BRL total
Given the expression $100 - €30
When the engine evaluates it
Then €30 is converted to USD (the currency of the left-hand operand)
And the result is expressed in USD
Given the expression $50 + $30
When the engine evaluates it
Then no conversion is needed (same currency)
And the result is $80
Given the expression $20 + €15 + £10 with no explicit target currency
When the engine evaluates it
Then all amounts are converted to the currency of the first operand (USD)
And the result is expressed in USD
Given the expression $20 * €15
When the engine evaluates it
Then it returns a CalcResult::Error because multiplying two currency values is not meaningful
And the error message is descriptive
Given the expression ($100 + €50) * 2 in GBP
When the engine evaluates it
Then the addition is performed first (converting EUR to USD), then multiplied by 2, then converted to GBP
And the result is a single GBP value