2
#include "config_xor.h"
9
void Test_sh_util_strdup_ok (CuTest *tc) {
11
char inp[] = "foobar";
13
ret = sh_util_strdup(inp);
14
CuAssertPtrNotNull(tc, ret);
15
CuAssert(tc, "expected inp != ret, but inp == ret", (inp != ret));
16
CuAssertStrEquals(tc, "foobar", ret);
20
void Test_sh_util_strconcat_ok (CuTest *tc) {
23
ret = sh_util_strconcat("foo", NULL);
24
CuAssertPtrNotNull(tc, ret);
25
CuAssertStrEquals(tc, "foo", ret);
27
ret = sh_util_strconcat("foo", "bar", NULL);
28
CuAssertPtrNotNull(tc, ret);
29
CuAssertStrEquals(tc, "foobar", ret);
31
ret = sh_util_strconcat("/", "foo", "/", "bar", NULL);
32
CuAssertPtrNotNull(tc, ret);
33
CuAssertStrEquals(tc, "/foo/bar", ret);
38
void Test_sh_util_dirname_ok (CuTest *tc) {
41
char input0[] = "/foo/bar";
44
char input1[] = "/foo/bar/";
47
char input2[] = "/foo";
53
ret = sh_util_dirname(input0);
54
CuAssertPtrNotNull(tc, ret);
55
CuAssertStrEquals(tc, res0, ret);
57
ret = sh_util_dirname(input1);
58
CuAssertPtrNotNull(tc, ret);
59
CuAssertStrEquals(tc, res1, ret);
61
ret = sh_util_dirname(input2);
62
CuAssertPtrNotNull(tc, ret);
63
CuAssertStrEquals(tc, res2, ret);
65
ret = sh_util_dirname(input3);
66
CuAssertPtrNotNull(tc, ret);
67
CuAssertStrEquals(tc, res3, ret);
71
void Test_sh_util_basename_ok (CuTest *tc) {
74
char input0[] = "/foo/bar";
77
char input1[] = "/foo/";
80
char input2[] = "/foo";
86
char input4[] = "/foo/bar/";
89
ret = sh_util_basename(input0);
90
CuAssertPtrNotNull(tc, ret);
91
CuAssertStrEquals(tc, res0, ret);
93
ret = sh_util_basename(input1);
94
CuAssertPtrNotNull(tc, ret);
95
CuAssertStrEquals(tc, res1, ret);
97
ret = sh_util_basename(input2);
98
CuAssertPtrNotNull(tc, ret);
99
CuAssertStrEquals(tc, res2, ret);
101
ret = sh_util_basename(input3);
102
CuAssertPtrNotNull(tc, ret);
103
CuAssertStrEquals(tc, res3, ret);
105
ret = sh_util_basename(input4);
106
CuAssertPtrNotNull(tc, ret);
107
CuAssertStrEquals(tc, res4, ret);
112
void Test_sh_util_obscure_ok (CuTest *tc) {
115
#if defined(SH_WITH_CLIENT) || defined(SH_STANDALONE)
116
char input[16] = "foobar";
118
ret = sh_util_obscure_ok ("0xA1,0xA2,0xA3");
119
CuAssertIntEquals(tc, ret, 0);
121
ret = sh_util_obscurename (0, input, S_FALSE /* no log message */);
122
CuAssertIntEquals(tc, ret, 0);
125
ret = sh_util_obscurename (0, input, S_FALSE /* no log message */);
126
CuAssertIntEquals(tc, ret, -1);
129
ret = sh_util_obscurename (0, input, S_FALSE /* no log message */);
130
CuAssertIntEquals(tc, ret, 0);
133
ret = sh_util_obscurename (0, input, S_FALSE /* no log message */);
134
CuAssertIntEquals(tc, ret, 0);
137
ret = sh_util_obscurename (0, input, S_FALSE /* no log message */);
138
CuAssertIntEquals(tc, ret, 0);
141
ret = sh_util_obscurename (0, input, S_FALSE /* no log message */);
142
CuAssertIntEquals(tc, ret, -1);
145
CuAssertIntEquals(tc, ret, 0);