This source file includes following definitions.
- main
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 #include <config.h>
20
21 #include "unistr.h"
22
23 #include "macros.h"
24
25 int
26 main ()
27 {
28 ucs4_t uc;
29 int ret;
30
31
32 {
33 static const uint16_t input[] = { 0 };
34 uc = 0xBADFACE;
35 ret = u16_mbtoucr (&uc, input, 1);
36 ASSERT (ret == 1);
37 ASSERT (uc == 0);
38 }
39
40
41 {
42 ucs4_t c;
43 uint16_t buf[1];
44
45 for (c = 0; c < 0x80; c++)
46 {
47 buf[0] = c;
48 uc = 0xBADFACE;
49 ret = u16_mbtoucr (&uc, buf, 1);
50 ASSERT (ret == 1);
51 ASSERT (uc == c);
52 }
53 }
54
55
56 {
57 static const uint16_t input[] = { 0x20AC };
58 uc = 0xBADFACE;
59 ret = u16_mbtoucr (&uc, input, 1);
60 ASSERT (ret == 1);
61 ASSERT (uc == 0x20AC);
62 }
63
64
65 {
66 static const uint16_t input[] = { 0xD835, 0xDD1F };
67 uc = 0xBADFACE;
68 ret = u16_mbtoucr (&uc, input, 2);
69 ASSERT (ret == 2);
70 ASSERT (uc == 0x1D51F);
71 }
72
73
74 {
75 static const uint16_t input[] = { 0xD835 };
76 uc = 0xBADFACE;
77 ret = u16_mbtoucr (&uc, input, 1);
78 ASSERT (ret == -2);
79 ASSERT (uc == 0xFFFD);
80 }
81 {
82 static const uint16_t input[] = { 0xDD1F };
83 uc = 0xBADFACE;
84 ret = u16_mbtoucr (&uc, input, 1);
85 ASSERT (ret == -1);
86 ASSERT (uc == 0xFFFD);
87 }
88
89 return 0;
90 }