]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/test/testdata/icuio.txt
ICU-66108.tar.gz
[apple/icu.git] / icuSources / test / testdata / icuio.txt
index bce8c961fc413213d150e2213cfbb1375bd14fdf..41e15f7e03fd13172700b3cd3594bf79a20472a7 100644 (file)
@@ -1,6 +1,8 @@
+// Copyright (C) 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 //*****************************************************************************
 //
-//  Copyright (C) 2004, International Business Machines
+//  Copyright (C) 2004-2006, International Business Machines
 //  Corporation and others.  All Rights Reserved.
 //
 //  file name:  icuio.txt
@@ -15,7 +17,7 @@
 //
 //*****************************************************************************
 
-icuio {
+icuio:table(nofallback) {
     Info {
         Description { "Test data for ICU I/O" }
         LongDescription {
@@ -24,6 +26,7 @@ icuio {
 
             "argumentType:\n"
             "\td: double\n"
+            "\tf: float\n"
             "\t1: int8_t (hexadecimal)\n"
             "\t2: int16_t (hexadecimal)\n"
             "\t4: int32_t (hexadecimal)\n"
@@ -36,6 +39,27 @@ icuio {
         printf {
             Headers { "format", "result", "argumentType", "argument" }
             Cases {
+                { "%5.3S", "  abc", "S", "abcde" }
+                { "%-5.3S", "abc  ", "S", "abcde" }
+                { "%5.3S", "  abc", "S", "abcdef" }
+                { "%-5.3S", "abc  ", "S", "abcdef" }
+                { "%5.3S", "    a", "S", "a" }
+                { "%-5.3S", "a    ", "S", "a" }
+                { "%5.3s", "  abc", "s", "abcde" }
+                { "%-5.3s", "abc  ", "s", "abcde" }
+                { "%5.3s", "  abc", "s", "abcdef" }
+                { "%-5.3s", "abc  ", "s", "abcdef" }
+                { "%5.3s", "    a", "s", "a" }
+                { "%-5.3s", "a    ", "s", "a" }
+                { "%5.3C", "    a", "2", "61" }
+                { "%-5.3C", "a    ", "2", "61" }
+                { "%-5.0C", "a    ", "2", "61" } // Make sure that the precision is ignored.
+                { "%.3P", "120.000%", "d", "1.2" }
+                { "%.0P", "120%", "d", "1.2" }
+                { "%.3P", "1.200%", "d", "0.012" }
+                { "%.0P", "1%", "d", "0.012" }
+                { "%04.0P", "001%", "d", "0.012" }
+                { "%+4.0P", " +1%", "d", "0.012" }
                 { "%e", "1.200000e+000", "d", "1.2" }
                 { "%e", "1.234568e+006", "d", "1234567.89" }
                 { "%E", "1.234568E+006", "d", "1234567.89" }
@@ -64,10 +88,12 @@ icuio {
                 { "%G", "12345.7", "d", "12345.6789" }
                 { "%G", "123457", "d", "123456.789" }
                 { "%G", "1.23457E+006", "d", "1234567.89" }
+                { "%.14G", "1.7E+064", "d", "1.7E+64" }
                 { "%.0f", "-12", "d", "-12.34" }
                 { "%.0e", "-1e+001", "d", "-12.34" }
                 { "%.0g", "-1e+001", "d", "-12.34" }
                 { "%hd", "-30002", "2", "8ace" }
+                { "%hu", "35534", "2", "8ace" }
                 { "%ho", "105316", "2", "8ace" }
                 { "%hx", "8ace", "2", "8ace" }
                 { "%lx", "8ace1234", "4", "8ace1234" }
@@ -87,13 +113,16 @@ icuio {
                 { "%*d", "12345678", "4", "BC614E", :int{7} }
                 { "%*d", "12345678", "4", "BC614E", :int{8} }
                 { "%*d", " 12345678", "4", "BC614E", :int{9} }
+                { "%*d", "12345678 ", "4", "BC614E", :int{-9} }
+                { "%*d", "1", "4", "1", :int{-1} }
+                { "%*d", "1 ", "4", "1", :int{-2} }
             }
         }
         scanf {
             Headers { "format", "argument", "argumentType", "result" }
             Cases {
-                { "%e", "1.200000e+000", "d", "1.2" }
-                { "%*e%e", "1.200000e+000 4.825000e+000", "d", "4.825" }
+                { "%e", "1.200000e+000", "f", "1.2" }
+                { "%*e%e", "1.200000e+000 4.825000e+000", "f", "4.825" }
                 { "%C", "1234", "2", "31" }
                 { "%*C%C", "1234", "2", "32" }
                 { "%S", "1234 5678", "S", "1234" }
@@ -105,7 +134,17 @@ icuio {
                 { "%lld", "1311768467463790320", "8", "123456789abcdef0" }
                 { "%3d", "1234 5678", "4", "7B" }
                 { "%4d", "123", "4", "7B" }
+                { "%2d", "123", "4", "C" }
                 { "%40d", "123", "4", "7B" }
+                { "%2e", "1.25", "f", "1" }
+                { "%2f", "1.25", "f", "1" }
+                { "%2g", "1.25", "f", "1" }
+                { "%2le", "1.25", "d", "1" }
+                { "%2lf", "1.25", "d", "1" }
+                { "%2lg", "1.25", "d", "1" }
+                { "%*2e%2e", "1.25", "f", "25" }
+                { "%*2f%2f", "1.25", "f", "25" }
+                { "%*2g%2g", "1.25", "f", "25" }
                 { "%*d%d", "1234 5678", "4", "162E" }
                 { "%x", "abcd ef01", "4", "abcd" }
                 { "%3x", "abcd ef01", "4", "abc" }
@@ -129,6 +168,12 @@ icuio {
                 { "%*3S%S", "abcd efg", "S", "d" }
                 { "%*3s%s", "abcd efg", "s", "d" }
                 { "%*3d%d", "1234", "4", "4" }
+                { "%d", " 1234", "4", "4D2" }
+                { "%e", " 1234", "f", "1234" }
+                { "%f", " 1234", "f", "1234" }
+                { "%d", "+1234", "4", "4D2" }
+                { "%e", "+1234", "f", "1234" }
+                { "%f", "+1234", "f", "1234" }
             }
         }
     }