use of javax.money.format.AmountFormatQuery in project jsr354-ri by JavaMoney.
the class MonetaryFormatsTest method testParse_BGN_bg_BG.
@Test
public void testParse_BGN_bg_BG() {
AmountFormatQuery formatQuery = AmountFormatQueryBuilder.of(BULGARIA).set(CODE).build();
MonetaryAmountFormat format = MonetaryFormats.getAmountFormat(formatQuery);
assertMoneyParse(format, "00000123 BGN", 123.0, "BGN");
assertMoneyParse(format, "123 BGN", 123.0, "BGN");
assertMoneyParse(format, "123,01 BGN", 123.01, "BGN");
assertMoneyParse(format, "14000,12 BGN", 14000.12, "BGN");
assertMoneyParse(format, "14\u00A0000,12 BGN", 14000.12, "BGN");
assertMoneyParse(format, "14 000,12 BGN", 14000.12, "BGN");
}
use of javax.money.format.AmountFormatQuery in project jsr354-ri by JavaMoney.
the class MonetaryFormatsTest method testFormat_BGN_bg_BG.
@Test
public void testFormat_BGN_bg_BG() {
AmountFormatQuery formatQuery = AmountFormatQueryBuilder.of(BULGARIA).set(CODE).build();
MonetaryAmountFormat format = MonetaryFormats.getAmountFormat(formatQuery);
assertMoneyFormat(format, Money.of(123.01, "BGN"), "123,01 BGN");
assertMoneyFormat(format, Money.of(14000.12, "BGN"), "14 000,12 BGN");
}
use of javax.money.format.AmountFormatQuery in project jsr354-ri by JavaMoney.
the class MonetaryFormatsTest method testParse_amount_without_currency_code_but_with_currency_in_context.
/**
* Test related to https://github.com/JavaMoney/jsr354-ri/issues/294
*/
@Test
public void testParse_amount_without_currency_code_but_with_currency_in_context() {
CurrencyUnit eur = Monetary.getCurrency("EUR");
AmountFormatQuery formatQuery = AmountFormatQueryBuilder.of(GERMANY).set(CurrencyUnit.class, eur).build();
MonetaryAmountFormat format = MonetaryFormats.getAmountFormat(formatQuery);
try {
MonetaryAmount parsedAmount = format.parse("0.01");
assertSame(parsedAmount.getCurrency(), eur);
assertEquals(parsedAmount.getNumber().doubleValueExact(), 0.01D);
assertEquals(parsedAmount.toString(), "EUR 0.01");
} catch (MonetaryParseException e) {
assertEquals(e.getMessage(), "Error parsing CurrencyUnit: no input.");
assertEquals(e.getErrorIndex(), -1);
}
}
use of javax.money.format.AmountFormatQuery in project jsr354-ri by JavaMoney.
the class MonetaryAmountFormatTest method testFormatWithBuilder2.
/**
* Test method for
* {@link javax.money.format.MonetaryAmountFormat#format(javax.money.MonetaryAmount)} .
*/
@Test
public void testFormatWithBuilder2() {
AmountFormatQuery formatQuery = AmountFormatQueryBuilder.of(GERMANY).set(NUMERIC_CODE).build();
MonetaryAmountFormat format = MonetaryFormats.getAmountFormat(formatQuery);
MonetaryAmount amountChf = Monetary.getDefaultAmountFactory().setCurrency("CHF").setNumber(12.50).create();
assertEquals("12,50 756", format.format(amountChf));
format = MonetaryFormats.getAmountFormat(AmountFormatQueryBuilder.of(US).set(SYMBOL).build());
MonetaryAmount amountUsd = Monetary.getDefaultAmountFactory().setCurrency("USD").setNumber(123456.561).create();
assertEquals("$123,456.56", format.format(amountUsd));
}
use of javax.money.format.AmountFormatQuery in project jsr354-ri-bp by JavaMoney.
the class MonetaryFormatsTest method testFormat_DKK_da.
@Test
public void testFormat_DKK_da() {
AmountFormatQuery formatQuery = AmountFormatQueryBuilder.of(DANISH).set(CODE).build();
MonetaryAmountFormat format = MonetaryFormats.getAmountFormat(formatQuery);
assertMoneyFormat(format, Money.of(123.01, "DKK"), "DKK 123,01");
assertMoneyFormat(format, Money.of(14000.12, "DKK"), "DKK 14.000,12");
}
Aggregations