Mercurial > hg > octave-nkf > gnulib-hg
annotate tests/unistdio/test-u8-printf1.h @ 12518:b5e42ef33b49
update nearly all FSF copyright year lists to include 2009
The files named by the following are exempted:
grep -v '^#' config/srclist.txt|grep -v '^$' \
| while read src dst; do
test -f "$dst" && { echo "$dst"; continue; }
test -d "$dst" || continue
echo "$dst"/$(basename "$src")
done > exempt
git ls-files tests/unictype >> exempt
In the remaining files, convert to all-interval notation if
- there is already at least one year interval like 2000-2003
- the file is maintained by me
- the file is in lib/uni*/, where that style already prevails
Otherwise, use update-copyright's default.
author | Jim Meyering <meyering@redhat.com> |
---|---|
date | Mon, 28 Dec 2009 10:50:36 +0100 |
parents | e8d2c6fc33ad |
children | c2cbabec01dd |
rev | line source |
---|---|
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
1 /* Test of u8_v[a]s[n]printf() function. |
12518
b5e42ef33b49
update nearly all FSF copyright year lists to include 2009
Jim Meyering <meyering@redhat.com>
parents:
12421
diff
changeset
|
2 Copyright (C) 2007, 2009 Free Software Foundation, Inc. |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
3 |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9030
diff
changeset
|
4 This program is free software: you can redistribute it and/or modify |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
5 it under the terms of the GNU General Public License as published by |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9030
diff
changeset
|
6 the Free Software Foundation; either version 3 of the License, or |
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9030
diff
changeset
|
7 (at your option) any later version. |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
8 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
9 This program is distributed in the hope that it will be useful, |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
10 but WITHOUT ANY WARRANTY; without even the implied warranty of |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
12 GNU General Public License for more details. |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
13 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
14 You should have received a copy of the GNU General Public License |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
9030
diff
changeset
|
15 along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
16 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
17 /* Written by Bruno Haible <bruno@clisp.org>, 2007. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
18 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
19 static void |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
20 test_xfunction (uint8_t * (*my_xasprintf) (const char *, ...)) |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
21 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
22 /* Test support of size specifiers as in C99. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
23 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
24 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
25 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
26 my_xasprintf ("%ju %d", (uintmax_t) 12345671, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
27 static const uint8_t expected[] = "12345671 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
28 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
29 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
30 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
31 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
32 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
33 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
34 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
35 my_xasprintf ("%zu %d", (size_t) 12345672, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
36 static const uint8_t expected[] = "12345672 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
37 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
38 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
39 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
40 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
41 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
42 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
43 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
44 my_xasprintf ("%tu %d", (ptrdiff_t) 12345673, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
45 static const uint8_t expected[] = "12345673 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
46 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
47 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
48 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
49 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
50 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
51 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
52 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
53 my_xasprintf ("%Lg %d", (long double) 1.5, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
54 static const uint8_t expected[] = "1.5 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
55 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
56 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
57 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
58 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
59 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
60 /* Test the support of the 'U' conversion specifier for Unicode strings. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
61 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
62 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
63 static const uint8_t unicode_string[] = "Hello"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
64 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
65 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
66 my_xasprintf ("%U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
67 static const uint8_t expected[] = "Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
68 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
69 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
70 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
71 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
72 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
73 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
74 my_xasprintf ("%10U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
75 static const uint8_t expected[] = " Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
76 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
77 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
78 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
79 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
80 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
81 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
82 my_xasprintf ("%-10U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
83 static const uint8_t expected[] = "Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
84 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
85 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
86 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
87 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
88 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
89 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
90 my_xasprintf ("%010U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
91 static const uint8_t expected[] = " Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
92 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
93 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
94 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
95 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
96 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
97 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
98 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
99 static const uint16_t unicode_string[] = { 'H', 'e', 'l', 'l', 'o', 0 }; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
100 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
101 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
102 my_xasprintf ("%lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
103 static const uint8_t expected[] = "Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
104 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
105 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
106 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
107 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
108 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
109 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
110 my_xasprintf ("%10lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
111 static const uint8_t expected[] = " Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
112 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
113 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
114 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
115 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
116 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
117 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
118 my_xasprintf ("%-10lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
119 static const uint8_t expected[] = "Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
120 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
121 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
122 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
123 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
124 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
125 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
126 my_xasprintf ("%010lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
127 static const uint8_t expected[] = " Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
128 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
129 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
130 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
131 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
132 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
133 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
134 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
135 static const uint32_t unicode_string[] = { 'H', 'e', 'l', 'l', 'o', 0 }; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
136 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
137 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
138 my_xasprintf ("%llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
139 static const uint8_t expected[] = "Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
140 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
141 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
142 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
143 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
144 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
145 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
146 my_xasprintf ("%10llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
147 static const uint8_t expected[] = " Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
148 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
149 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
150 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
151 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
152 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
153 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
154 my_xasprintf ("%-10llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
155 static const uint8_t expected[] = "Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
156 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
157 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
158 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
159 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
160 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
161 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
162 my_xasprintf ("%010llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
163 static const uint8_t expected[] = " Hello 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
164 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
165 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
166 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
167 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
168 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
169 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
170 /* Test the support of the 's' conversion specifier for strings. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
171 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
172 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
173 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
174 my_xasprintf ("Mr. %s %d", "Ronald Reagan", 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
175 static const uint8_t expected[] = "Mr. Ronald Reagan 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
176 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
177 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
178 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
179 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
180 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
181 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
182 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
183 my_xasprintf ("Mr. %20s %d", "Ronald Reagan", 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
184 static const uint8_t expected[] = "Mr. Ronald Reagan 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
185 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
186 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
187 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
188 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
189 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
190 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
191 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
192 my_xasprintf ("Mr. %-20s %d", "Ronald Reagan", 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
193 static const uint8_t expected[] = "Mr. Ronald Reagan 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
194 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
195 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
196 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
197 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
198 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
199 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
200 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
201 my_xasprintf ("Mr. %020s %d", "Ronald Reagan", 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
202 static const uint8_t expected[] = "Mr. Ronald Reagan 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
203 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
204 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
205 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
206 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
207 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
208 /* Test the support of the 'a' and 'A' conversion specifier for hexadecimal |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
209 output of floating-point numbers. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
210 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
211 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
212 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
213 my_xasprintf ("%a %d", 3.1416015625, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
214 static const uint8_t expected1[] = "0x1.922p+1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
215 static const uint8_t expected2[] = "0x3.244p+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
216 static const uint8_t expected3[] = "0x6.488p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
217 static const uint8_t expected4[] = "0xc.91p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
218 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
219 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
220 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
221 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
222 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
223 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
224 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
225 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
226 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
227 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
228 my_xasprintf ("%10a %d", 1.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
229 static const uint8_t expected1[] = " 0x1.cp+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
230 static const uint8_t expected2[] = " 0x3.8p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
231 static const uint8_t expected3[] = " 0x7p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
232 static const uint8_t expected4[] = " 0xep-3 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
233 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
234 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
235 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
236 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
237 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
238 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
239 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
240 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
241 { /* Small precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
242 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
243 my_xasprintf ("%.10a %d", 1.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
244 static const uint8_t expected1[] = "0x1.c000000000p+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
245 static const uint8_t expected2[] = "0x3.8000000000p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
246 static const uint8_t expected3[] = "0x7.0000000000p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
247 static const uint8_t expected4[] = "0xe.0000000000p-3 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
248 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
249 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
250 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
251 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
252 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
253 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
254 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
255 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
256 { /* Large precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
257 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
258 my_xasprintf ("%.50a %d", 1.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
259 static const uint8_t expected1[] = "0x1.c0000000000000000000000000000000000000000000000000p+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
260 static const uint8_t expected2[] = "0x3.80000000000000000000000000000000000000000000000000p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
261 static const uint8_t expected3[] = "0x7.00000000000000000000000000000000000000000000000000p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
262 static const uint8_t expected4[] = "0xe.00000000000000000000000000000000000000000000000000p-3 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
263 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
264 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
265 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
266 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
267 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
268 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
269 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
270 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
271 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
272 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
273 my_xasprintf ("%La %d", 3.1416015625L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
274 static const uint8_t expected1[] = "0x1.922p+1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
275 static const uint8_t expected2[] = "0x3.244p+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
276 static const uint8_t expected3[] = "0x6.488p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
277 static const uint8_t expected4[] = "0xc.91p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
278 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
279 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
280 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
281 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
282 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
283 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
284 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
285 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
286 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
287 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
288 my_xasprintf ("%10La %d", 1.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
289 static const uint8_t expected1[] = " 0x1.cp+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
290 static const uint8_t expected2[] = " 0x3.8p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
291 static const uint8_t expected3[] = " 0x7p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
292 static const uint8_t expected4[] = " 0xep-3 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
293 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
294 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
295 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
296 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
297 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
298 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
299 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
300 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
301 { /* Small precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
302 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
303 my_xasprintf ("%.10La %d", 1.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
304 static const uint8_t expected1[] = "0x1.c000000000p+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
305 static const uint8_t expected2[] = "0x3.8000000000p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
306 static const uint8_t expected3[] = "0x7.0000000000p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
307 static const uint8_t expected4[] = "0xe.0000000000p-3 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
308 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
309 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
310 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
311 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
312 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
313 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
314 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
315 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
316 { /* Large precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
317 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
318 my_xasprintf ("%.50La %d", 1.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
319 static const uint8_t expected1[] = "0x1.c0000000000000000000000000000000000000000000000000p+0 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
320 static const uint8_t expected2[] = "0x3.80000000000000000000000000000000000000000000000000p-1 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
321 static const uint8_t expected3[] = "0x7.00000000000000000000000000000000000000000000000000p-2 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
322 static const uint8_t expected4[] = "0xe.00000000000000000000000000000000000000000000000000p-3 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
323 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
324 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
325 || u8_strcmp (result, expected2) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
326 || u8_strcmp (result, expected3) == 0 |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
327 || u8_strcmp (result, expected4) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
328 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
329 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
330 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
331 /* Test the support of the %f format directive. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
332 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
333 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
334 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
335 my_xasprintf ("%f %d", 12.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
336 static const uint8_t expected[] = "12.750000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
337 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
338 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
339 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
340 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
341 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
342 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
343 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
344 my_xasprintf ("%10f %d", 1.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
345 static const uint8_t expected[] = " 1.750000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
346 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
347 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
348 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
349 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
350 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
351 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
352 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
353 my_xasprintf ("%.f %d", 1234.0, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
354 static const uint8_t expected[] = "1234 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
355 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
356 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
357 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
358 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
359 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
360 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
361 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
362 my_xasprintf ("%Lf %d", 12.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
363 static const uint8_t expected[] = "12.750000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
364 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
365 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
366 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
367 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
368 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
369 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
370 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
371 my_xasprintf ("%10Lf %d", 1.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
372 static const uint8_t expected[] = " 1.750000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
373 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
374 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
375 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
376 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
377 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
378 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
379 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
380 my_xasprintf ("%.Lf %d", 1234.0L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
381 static const uint8_t expected[] = "1234 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
382 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
383 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
384 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
385 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
386 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
387 /* Test the support of the %F format directive. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
388 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
389 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
390 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
391 my_xasprintf ("%F %d", 12.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
392 static const uint8_t expected[] = "12.750000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
393 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
394 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
395 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
396 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
397 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
398 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
399 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
400 my_xasprintf ("%.F %d", 1234.0, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
401 static const uint8_t expected[] = "1234 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
402 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
403 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
404 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
405 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
406 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
407 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
408 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
409 my_xasprintf ("%LF %d", 12.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
410 static const uint8_t expected[] = "12.750000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
411 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
412 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
413 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
414 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
415 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
416 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
417 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
418 my_xasprintf ("%.LF %d", 1234.0L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
419 static const uint8_t expected[] = "1234 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
420 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
421 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
422 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
423 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
424 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
425 /* Test the support of the %e format directive. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
426 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
427 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
428 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
429 my_xasprintf ("%e %d", 12.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
430 static const uint8_t expected1[] = "1.275000e+01 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
431 static const uint8_t expected2[] = "1.275000e+001 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
432 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
433 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
434 || u8_strcmp (result, expected2) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
435 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
436 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
437 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
438 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
439 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
440 my_xasprintf ("%15e %d", 1.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
441 static const uint8_t expected1[] = " 1.750000e+00 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
442 static const uint8_t expected2[] = " 1.750000e+000 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
443 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
444 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
445 || u8_strcmp (result, expected2) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
446 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
447 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
448 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
449 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
450 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
451 my_xasprintf ("%.e %d", 1234.0, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
452 static const uint8_t expected1[] = "1e+03 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
453 static const uint8_t expected2[] = "1e+003 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
454 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
455 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
456 || u8_strcmp (result, expected2) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
457 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
458 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
459 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
460 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
461 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
462 my_xasprintf ("%Le %d", 12.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
463 static const uint8_t expected[] = "1.275000e+01 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
464 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
465 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
466 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
467 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
468 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
469 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
470 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
471 my_xasprintf ("%15Le %d", 1.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
472 static const uint8_t expected[] = " 1.750000e+00 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
473 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
474 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
475 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
476 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
477 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
478 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
479 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
480 my_xasprintf ("%.Le %d", 1234.0L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
481 static const uint8_t expected[] = "1e+03 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
482 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
483 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
484 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
485 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
486 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
487 /* Test the support of the %g format directive. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
488 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
489 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
490 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
491 my_xasprintf ("%g %d", 12.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
492 static const uint8_t expected[] = "12.75 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
493 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
494 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
495 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
496 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
497 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
498 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
499 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
500 my_xasprintf ("%10g %d", 1.75, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
501 static const uint8_t expected[] = " 1.75 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
502 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
503 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
504 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
505 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
506 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
507 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
508 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
509 my_xasprintf ("%.g %d", 1234.0, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
510 static const uint8_t expected1[] = "1e+03 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
511 static const uint8_t expected2[] = "1e+003 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
512 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
513 ASSERT (u8_strcmp (result, expected1) == 0 |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
514 || u8_strcmp (result, expected2) == 0); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
515 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
516 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
517 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
518 { /* A positive number. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
519 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
520 my_xasprintf ("%Lg %d", 12.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
521 static const uint8_t expected[] = "12.75 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
522 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
523 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
524 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
525 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
526 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
527 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
528 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
529 my_xasprintf ("%10Lg %d", 1.75L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
530 static const uint8_t expected[] = " 1.75 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
531 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
532 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
533 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
534 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
535 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
536 { /* Precision. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
537 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
538 my_xasprintf ("%.Lg %d", 1234.0L, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
539 static const uint8_t expected[] = "1e+03 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
540 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
541 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
542 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
543 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
544 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
545 /* Test the support of the %n format directive. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
546 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
547 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
548 int count = -1; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
549 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
550 my_xasprintf ("%d %n", 123, &count, 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
551 static const uint8_t expected[] = "123 "; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
552 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
553 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
554 ASSERT (count == 4); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
555 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
556 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
557 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
558 /* Test the support of the POSIX/XSI format strings with positions. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
559 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
560 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
561 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
562 my_xasprintf ("%2$d %1$d", 33, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
563 static const uint8_t expected[] = "55 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
564 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
565 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
566 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
567 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
568 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
569 /* Test the support of the grouping flag. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
570 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
571 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
572 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
573 my_xasprintf ("%'d %d", 1234567, 99); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
574 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
575 ASSERT (result[u8_strlen (result) - 1] == '9'); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
576 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
577 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
578 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
579 /* Test the support of the 'U' conversion specifier for Unicode strings. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
580 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
581 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
582 static const uint8_t unicode_string[] = "Rafa\305\202 Maszkowski"; /* RafaĆ Maszkowski */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
583 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
584 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
585 my_xasprintf ("%U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
586 static const uint8_t expected[] = "Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
587 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
588 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
589 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
590 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
591 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
592 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
593 my_xasprintf ("%20U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
594 static const uint8_t expected[] = " Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
595 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
596 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
597 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
598 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
599 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
600 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
601 my_xasprintf ("%-20U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
602 static const uint8_t expected[] = "Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
603 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
604 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
605 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
606 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
607 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
608 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
609 my_xasprintf ("%020U %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
610 static const uint8_t expected[] = " Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
611 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
612 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
613 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
614 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
615 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
616 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
617 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
618 static const uint16_t unicode_string[] = /* RafaĆ Maszkowski */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
619 { |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
620 'R', 'a', 'f', 'a', 0x0142, ' ', 'M', 'a', 's', 'z', 'k', 'o', 'w', |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
621 's', 'k', 'i', 0 |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
622 }; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
623 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
624 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
625 my_xasprintf ("%lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
626 static const uint8_t expected[] = "Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
627 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
628 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
629 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
630 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
631 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
632 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
633 my_xasprintf ("%20lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
634 static const uint8_t expected[] = " Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
635 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
636 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
637 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
638 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
639 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
640 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
641 my_xasprintf ("%-20lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
642 static const uint8_t expected[] = "Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
643 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
644 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
645 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
646 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
647 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
648 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
649 my_xasprintf ("%020lU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
650 static const uint8_t expected[] = " Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
651 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
652 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
653 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
654 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
655 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
656 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
657 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
658 static const uint32_t unicode_string[] = /* RafaĆ Maszkowski */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
659 { |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
660 'R', 'a', 'f', 'a', 0x0142, ' ', 'M', 'a', 's', 'z', 'k', 'o', 'w', |
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
661 's', 'k', 'i', 0 |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
662 }; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
663 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
664 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
665 my_xasprintf ("%llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
666 static const uint8_t expected[] = "Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
667 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
668 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
669 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
670 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
671 { /* Width. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
672 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
673 my_xasprintf ("%20llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
674 static const uint8_t expected[] = " Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
675 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
676 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
677 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
678 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
679 { /* FLAG_LEFT. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
680 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
681 my_xasprintf ("%-20llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
682 static const uint8_t expected[] = "Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
683 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
684 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
685 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
686 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
687 { /* FLAG_ZERO: no effect. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
688 uint8_t *result = |
12421
e8d2c6fc33ad
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
9309
diff
changeset
|
689 my_xasprintf ("%020llU %d", unicode_string, 33, 44, 55); |
9030
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
690 static const uint8_t expected[] = " Rafa\305\202 Maszkowski 33"; |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
691 ASSERT (result != NULL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
692 ASSERT (u8_strcmp (result, expected) == 0); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
693 free (result); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
694 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
695 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
696 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
697 /* Test non-ASCII characters in the format string. */ |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
698 |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
699 { |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
700 uint8_t *result = |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
701 my_xasprintf ("\304rger", 33, 44, 55); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
702 ASSERT (result == NULL && errno == EINVAL); |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
703 } |
870029929d86
Formatted output functions for Unicode strings.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
704 } |