This source file includes following definitions.
- START_PARAMETRIZED_TEST
- main
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 #define TEST_SUITE_NAME "/lib/vfs"
27
28 #include "tests/mctest.h"
29
30 #include "lib/vfs/path.h"
31
32
33
34
35 static const struct test_vfs_get_encoding_ds
36 {
37 const char *path;
38 const char *expected_encoding;
39 } test_vfs_get_encoding_ds[] = {
40 {
41
42 "",
43 NULL,
44 },
45 {
46
47 "aaaa",
48 NULL,
49 },
50 {
51
52 "/aaaa",
53 NULL,
54 },
55 {
56
57 "aaaa/bbbb",
58 NULL,
59 },
60 {
61
62 "/aaaa/bbbb",
63 NULL,
64 },
65 {
66
67 "#enc:UTF-8/aaaa",
68 "UTF-8",
69 },
70 {
71
72 "/#enc:UTF-8/aaaa",
73 "UTF-8",
74 },
75 {
76
77 "/aaaa/#enc:UTF-8/bbbb",
78 "UTF-8",
79 },
80 {
81
82 "/aaaa/#enc:UTF-8/bbbb/#enc:KOI8-R",
83 "KOI8-R",
84 },
85 {
86
87 "/aaaa/#enc:UTF-8/bbbb/#enc:KOI8-R/cccc",
88 "KOI8-R",
89 },
90 {
91
92 "/aaaa/#enc:UTF-8/bbbb/cccc#enc:KOI8-R/dddd",
93 "UTF-8",
94 },
95 {
96
97 "/#enc:UTF-8/bbbb/cccc#enc:KOI8-R/dddd",
98 "UTF-8",
99 },
100 {
101
102 "#enc:UTF-8/bbbb/cccc#enc:KOI8-R/dddd",
103 "UTF-8",
104 },
105 {
106
107 "aaaa#enc:UTF-8/bbbb/cccc#enc:KOI8-R/dddd",
108 NULL,
109 },
110 {
111
112 "/aaaa/#enc:UTF-8/bbbb/#enc:KOI8-R#enc:CP866/cccc",
113 "KOI8-R#enc:CP866",
114 },
115 };
116
117
118 START_PARAMETRIZED_TEST (test_vfs_get_encoding, test_vfs_get_encoding_ds)
119 {
120
121 char *actual_encoding;
122
123
124 actual_encoding = vfs_get_encoding (data->path, -1);
125
126
127 mctest_assert_str_eq (actual_encoding, data->expected_encoding);
128
129 g_free (actual_encoding);
130 }
131 END_PARAMETRIZED_TEST
132
133
134
135 int
136 main (void)
137 {
138 TCase *tc_core;
139
140 tc_core = tcase_create ("Core");
141
142
143 mctest_add_parameterized_test (tc_core, test_vfs_get_encoding, test_vfs_get_encoding_ds);
144
145
146 return mctest_run_all (tc_core);
147 }
148
149