---
title: "Verify currency formatting preserves amount and unit"
description: "Test a localized sandbox price display with distinct currencies, checking symbols, fractional digits, and exact monetary units without real transactions."
canonical_url: "https://vostride.com/agent-library/localization/currency-display-versus-unit.md"
md_url: "https://vostride.com/agent-library/localization/currency-display-versus-unit.md"
content_kind: "recipe"
topic: "localization"
---

# Verify currency formatting preserves amount and unit

Test a localized sandbox price display with distinct currencies, checking symbols, fractional digits, and exact monetary units without real transactions.

## Risk

A familiar currency symbol can hide a wrong currency code or minor-unit conversion. Treat currency and amount as a pair and compare the rendered value with an independent exact numeric fixture.

## Fixtures

- An owned sandbox quote viewer containing synthetic quotes in two currencies with different documented display precision.
- A supported locale selected through product settings and an approved formatting expectation for each currency, including disambiguating codes where required.
- A read-only quote oracle exposing currency code and integer minor-unit amount; payment and fulfillment are disabled for these fixtures.

## Steps

1. Open the first quote and verify its currency label, grouping, and fractional digits match the approved locale expectation.
2. Open the second quote and verify its distinct currency identity and precision rather than reusing the first quote formatter state.
3. Return to the first quote through the list and verify the original amount and currency remain associated with its identifier.
4. Change only the display locale and verify the formatting changes while the monetary value and currency meaning remain the same.
5. Inspect the independent quote oracle and verify both currency codes and minor-unit amounts are unchanged; compare each displayed amount using that currency fixture conversion rule.

## Expected results

- Every rendered amount carries the correct currency identity and prescribed precision.
- Changing locale changes presentation without converting or modifying money values.
- The persisted minor-unit values remain exactly equal to the original synthetic fixtures.

## False-pass traps

- A dollar-like symbol alone cannot distinguish currencies sharing that symbol.
- Comparing formatted strings without the currency minor-unit rule can miss a hundredfold magnitude error.

## Cleanup

- Restore the original display locale and remove disposable quote fixtures if they were created for the run.

## Use with agent-qa

Adapt this test design to your application's acceptance criteria and configured target using the [recipe execution guide](/agent-library/software-factory/turn-a-recipe-into-an-agent-qa-test.md). External fixture setup and non-UI checks require your own supported hooks or test tooling. Validate the authored test, execute it, and inspect the completed evidence; this recipe is not a recorded test result.

## References

- [agent-qa first test](/docs/agent-qa/guides/first-test.md)
- [agent-qa hooks](/docs/agent-qa/guides/hooks.md)
- [agent-qa test](/docs/agent-qa/configuration/test.md)

- [Localization QA recipes](/agent-library/localization.md)
- [Software factory QA library](/agent-library.md)
