| |
| # Note: Please make sure that this utf-8 file contains a BOM. |
| # Copyright (c) 2011, International Business Machines Corporation and |
| # others. All Rights Reserved. |
| # |
| |
| # File: dcfmtest.txt |
| # |
| # Decimal formatter test cases. |
| # File Encoding: UTF-8 |
| # |
| # The syntax for this file is this: |
| # One test case per line. No continuations. No multiple cases per line. |
| # |
| # Parsing Test case line: |
| # parse "input text" type "expected_decimal_text" |
| # |
| # Format Test Case Line: |
| # format pattern round-mode "decimal number" "expected formatted result" |
| # |
| # Fields are separated by spaces or tabs. Input text to be parsed, decimal numbers |
| # and formatted output are "quoted". Other fields are not. |
| # |
| # "type" is a single letter, representing the type that the ICU formattable produces |
| # for the input. |
| # d double |
| # i int32 |
| # l int64 |
| # |
| # RoundingMode is one of |
| # default |
| # ceiling |
| # floor |
| # down |
| # up |
| # halfeven |
| # halfdown |
| # halfup |
| # |
| |
| parse "123.45" d "123.45" |
| |
| format 0.0000E0 default "1234.01" "1.2340E3" |
| |
| format 00 default "1234" "1234" |
| format 00 default ".01" "00" |
| format 00 default "1" "01" |
| format 00 default "1.9" "02" |
| |
| format #.# default "12.34" "12.3" |
| |
| format @@@ default "12.3456" "12.3" |
| format @@@ default "123456" "123000" |
| format @@@ default ".00123456" "0.00123" |
| |
| format @@### default "12345678" "12346000" |
| format @@### default "12300001" "12300000" |
| format @@### default ".0012345678" "0.0012346" |
| format @@### default ".0012300000" "0.00123" |
| |
| format @@@@E0 default "1234567" "1.235E6" |
| format 0.0##E0 default "1234567" "1.235E6" |
| format 00.##E0 default "1234567" "12.35E5" |
| format 00.##E0 default "1234567E111" "12.35E116" |
| format 00.##E0 default "-1234567E111" "-12.35E116" |
| |
| |
| # |
| # Rounding Modes |
| # |
| format 0.00 default "32.045" "32.04" |
| format 0.00 floor "32.045" "32.04" |
| format 0.00 ceiling "32.045" "32.05" |
| format 0.00 down "32.045" "32.04" |
| format 0.00 up "32.045" "32.05" |
| format 0.00 halfeven "32.045" "32.04" |
| format 0.00 halfdown "32.045" "32.04" |
| format 0.00 halfup "32.045" "32.05" |
| |
| format 0.00 default "-32.045" "-32.04" |
| format 0.00 floor "-32.045" "-32.05" |
| format 0.00 ceiling "-32.045" "-32.04" |
| format 0.00 down "-32.045" "-32.04" |
| format 0.00 up "-32.045" "-32.05" |
| format 0.00 halfeven "-32.045" "-32.04" |
| format 0.00 halfdown "-32.045" "-32.04" |
| format 0.00 halfup "-32.045" "-32.05" |
| |
| format @@@ default "1235.00" "1240" |
| format @@@ floor "1235.00" "1230" |
| format @@@ ceiling "1235.00" "1240" |
| format @@@ down "1235.00" "1230" |
| format @@@ up "1235.00" "1240" |
| format @@@ halfeven "1235.00" "1240" |
| format @@@ halfdown "1235.00" "1230" |
| format @@@ halfup "1235.00" "1240" |
| |
| format @@@ default "-1235.00" "-1240" |
| format @@@ floor "-1235.00" "-1240" |
| format @@@ ceiling "-1235.00" "-1230" |
| format @@@ down "-1235.00" "-1230" |
| format @@@ up "-1235.00" "-1240" |
| format @@@ halfeven "-1235.00" "-1240" |
| format @@@ halfdown "-1235.00" "-1230" |
| format @@@ halfup "-1235.00" "-1240" |
| |
| format 0.000E0 default "12345" "1.234E4" |
| format 0.000E0 floor "12345" "1.234E4" |
| format 0.000E0 ceiling "12345" "1.235E4" |
| format 0.000E0 down "12345" "1.234E4" |
| format 0.000E0 up "12345" "1.235E4" |
| format 0.000E0 halfeven "12345" "1.234E4" |
| format 0.000E0 halfdown "12345" "1.234E4" |
| format 0.000E0 halfup "12345" "1.235E4" |
| |
| |
| format 0.0## default "1.00001" "1.0" |
| format 0.0## up "1.00001" "1.001" |
| format 0.0## up "1.0000000000000000000000000000000000000000000000000001" "1.001" |
| format 0.0## up "1.0000000000000000000000000000000000000000000000000000" "1.0" |
| |
| format # default "10000000000000000000000000000000000000000000000000001" "10000000000000000000000000000000000000000000000000001" |
| |
| format 0.#E0 default "1234" "1.2E3" |
| format 0.##E0 default "1234" "1.23E3" |
| format .0E0 default "1234" ".1E4" |
| format .0#E0 default "1234" ".12E4" |
| format 0.##E0 default "1234" "1.23E3" |
| |
| # RoundUnnecessary. Fail if result would be inexact. |
| format 0.00 unnecessary "-32.045" "Inexact" |
| format 0.00 unnecessary "-32.040" "-32.04" |
| format 0.##E0 unnecessary "1230" "1.23E3" |
| format 0.##E0 unnecessary "1231" "Inexact" |
| format @@@ unnecessary "1230" "1230" |
| format @@@ unnecessary "1231" "Inexact" |
| format @@@@@@@@@@@@@@@@@@@@@@@@@ unnecessary "1234567890123456789012345" "1234567890123456789012345" |
| format @@@@@@@@@@@@@@@@@@@@@@@@@ unnecessary "12345678901234567890123456" "Inexact" |