string-buffer, string-buffer-reversed: Allow for better static analysis.
[gnulib.git] / tests / unictype / test-joininggroup_name.c
blob9196014ba1f0ea4cf08860e6782444236883dd89
1 /* Test the Unicode character Arabic joining group functions.
2 Copyright (C) 2011-2025 Free Software Foundation, Inc.
3 Written by Bruno Haible <bruno@clisp.org>, 2011.
5 This program is free software: you can redistribute it and/or modify it
6 under the terms of the GNU Lesser General Public License as published
7 by the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
15 You should have received a copy of the GNU Lesser General Public License
16 along with this program. If not, see <https://www.gnu.org/licenses/>. */
18 #include <config.h>
20 /* Specification. */
21 #include "unictype.h"
23 #include <string.h>
25 #include "macros.h"
27 int
28 main ()
30 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_NONE), "No Joining Group") == 0);
31 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_AIN), "Ain") == 0);
32 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_ALAPH), "Alaph") == 0);
33 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_ALEF), "Alef") == 0);
34 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_BEH), "Beh") == 0);
35 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_BETH), "Beth") == 0);
36 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_BURUSHASKI_YEH_BARREE), "Burushaski Yeh Barree") == 0);
37 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_DAL), "Dal") == 0);
38 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_DALATH_RISH), "Dalath Rish") == 0);
39 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_E), "E") == 0);
40 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_FARSI_YEH), "Farsi Yeh") == 0);
41 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_FE), "Fe") == 0);
42 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_FEH), "Feh") == 0);
43 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_FINAL_SEMKATH), "Final Semkath") == 0);
44 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_GAF), "Gaf") == 0);
45 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_GAMAL), "Gamal") == 0);
46 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_HAH), "Hah") == 0);
47 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_HE), "He") == 0);
48 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_HEH), "Heh") == 0);
49 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_HEH_GOAL), "Heh Goal") == 0);
50 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_HETH), "Heth") == 0);
51 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_KAF), "Kaf") == 0);
52 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_KAPH), "Kaph") == 0);
53 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_KHAPH), "Khaph") == 0);
54 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_KNOTTED_HEH), "Knotted Heh") == 0);
55 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_LAM), "Lam") == 0);
56 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_LAMADH), "Lamadh") == 0);
57 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_MEEM), "Meem") == 0);
58 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_MIM), "Mim") == 0);
59 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_NOON), "Noon") == 0);
60 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_NUN), "Nun") == 0);
61 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_NYA), "Nya") == 0);
62 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_PE), "Pe") == 0);
63 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_QAF), "Qaf") == 0);
64 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_QAPH), "Qaph") == 0);
65 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_REH), "Reh") == 0);
66 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_REVERSED_PE), "Reversed Pe") == 0);
67 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SAD), "Sad") == 0);
68 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SADHE), "Sadhe") == 0);
69 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SEEN), "Seen") == 0);
70 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SEMKATH), "Semkath") == 0);
71 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SHIN), "Shin") == 0);
72 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SWASH_KAF), "Swash Kaf") == 0);
73 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_SYRIAC_WAW), "Syriac Waw") == 0);
74 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_TAH), "Tah") == 0);
75 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_TAW), "Taw") == 0);
76 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_TEH_MARBUTA), "Teh Marbuta") == 0);
77 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_TEH_MARBUTA_GOAL), "Teh Marbuta Goal") == 0);
78 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_TETH), "Teth") == 0);
79 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_WAW), "Waw") == 0);
80 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_YEH), "Yeh") == 0);
81 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_YEH_BARREE), "Yeh Barree") == 0);
82 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_YEH_WITH_TAIL), "Yeh With Tail") == 0);
83 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_YUDH), "Yudh") == 0);
84 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_YUDH_HE), "Yudh He") == 0);
85 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_ZAIN), "Zain") == 0);
86 ASSERT (strcmp (uc_joining_group_name (UC_JOINING_GROUP_ZHAIN), "Zhain") == 0);
87 ASSERT (uc_joining_group_name (-1) == NULL);
89 return test_exit_status;