blob: 747a8bb0d2bd1351743399305847ce2ee20b5dfa [file] [log] [blame]
// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
library intl_test;
import 'package:intl/intl.dart';
import 'package:unittest/unittest.dart';
import 'package:fixnum/fixnum.dart';
var int64Values = {
new Int64(12345): ["USD12,345.00", "1,234,500%"],
new Int64(0x7FFFFFFFFFFFF): [
"USD2,251,799,813,685,247.00",
"225,179,981,368,524,700%"
],
Int64.parseHex('7FFFFFFFFFFFFFF'): [
"USD576,460,752,303,423,487.00",
"57,646,075,230,342,348,700%"
],
Int64.parseHex('8000000000000000'): [
"-USD9,223,372,036,854,775,808.00",
"-922,337,203,685,477,580,800%"
]
};
var int32Values = {
new Int32(12345): ["USD12,345.00", "1,234,500%"],
new Int32(0x7FFFF): ["USD524,287.00", "52,428,700%"],
Int32.parseHex('7FFFFFF'): ["USD134,217,727.00", "13,421,772,700%"],
Int32.parseHex('80000000'): ["-USD2,147,483,648.00", "-214,748,364,800%"]
};
main() {
test('int64', () {
int64Values.forEach((number, expected) {
var currency = new NumberFormat.currencyPattern().format(number);
expect(currency, expected.first);
var percent = new NumberFormat.percentPattern().format(number);
expect(percent, expected[1]);
});
});
test('int32', () {
int32Values.forEach((number, expected) {
var currency = new NumberFormat.currencyPattern().format(number);
expect(currency, expected.first);
var percent = new NumberFormat.percentPattern().format(number);
expect(percent, expected[1]);
});
});
}