Mercurial > irccd
annotate tests/test-subst.c @ 1141:5959952c24d1 stable-4
misc: create stable-4 branch
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 03 Feb 2022 13:13:38 +0100 |
parents | f06e9761cc90 |
children | 1845a0509a93 |
rev | line source |
---|---|
935
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * test-subst.c -- test subst.h functions |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
1136
f06e9761cc90
misc: update copyright years
David Demelier <markand@malikania.fr>
parents:
935
diff
changeset
|
4 * Copyright (c) 2013-2022 David Demelier <markand@malikania.fr> |
935
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 #include <errno.h> |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 #define GREATEST_USE_ABBREVS 0 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 #include <greatest.h> |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 #include <irccd/subst.h> |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 #include <irccd/util.h> |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 basics_test(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 struct irc_subst params = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello world!", ¶ms), 12); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 GREATEST_ASSERT_STR_EQ("hello world!", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 basics_escape(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 { "target", "hello" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 .flags = IRC_SUBST_KEYWORDS, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "$@#", ¶ms), 3); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 GREATEST_ASSERT_STR_EQ("$@#", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), " $ @ # ", ¶ms), 7); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 GREATEST_ASSERT_STR_EQ(" $ @ # ", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "#", ¶ms), 1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 GREATEST_ASSERT_STR_EQ("#", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), " # ", ¶ms), 3); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 GREATEST_ASSERT_STR_EQ(" # ", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "#@", ¶ms), 2); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 GREATEST_ASSERT_STR_EQ("#@", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "##", ¶ms), 1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 GREATEST_ASSERT_STR_EQ("#", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "#!", ¶ms), 2); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 GREATEST_ASSERT_STR_EQ("#!", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "##{target}", ¶ms), 9); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 GREATEST_ASSERT_STR_EQ("#{target}", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@#{target}", ¶ms), 6); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 GREATEST_ASSERT_STR_EQ("@hello", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "#{target}#", ¶ms), 6); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 GREATEST_ASSERT_STR_EQ("hello#", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
80 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "abc##xyz", ¶ms), 7); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 GREATEST_ASSERT_STR_EQ("abc#xyz", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "abc###xyz", ¶ms), 8); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 GREATEST_ASSERT_STR_EQ("abc##xyz", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
87 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "#{failure", ¶ms), -1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
88 GREATEST_ASSERT_EQ(errno, EINVAL); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 GREATEST_ASSERT_STR_EQ("", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
90 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
92 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
94 disable_date(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
96 struct irc_subst params = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
97 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
98 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "%H:%M", ¶ms), 5); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
100 GREATEST_ASSERT_STR_EQ("%H:%M", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
101 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
104 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
105 disable_keywords(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
106 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
107 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
108 { "target", "hello" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
109 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
110 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
111 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
112 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
113 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
114 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
115 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
116 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "#{target}", ¶ms), 9); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
117 GREATEST_ASSERT_STR_EQ("#{target}", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
118 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
119 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
120 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
122 disable_env(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
123 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
124 struct irc_subst params = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
125 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
126 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
127 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "${HOME}", ¶ms), 7); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
128 GREATEST_ASSERT_STR_EQ("${HOME}", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
129 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
130 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
131 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
132 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
133 disable_shell(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
134 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
135 struct irc_subst params = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
136 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
137 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
138 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "!{hostname}", ¶ms), 11); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
139 GREATEST_ASSERT_STR_EQ("!{hostname}", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
140 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
141 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
142 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
143 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
144 keywords_simple(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
145 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
146 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
147 { "target", "irccd" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
148 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
149 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
150 .flags = IRC_SUBST_KEYWORDS, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
151 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
152 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
153 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
154 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
155 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
156 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello #{target}!", ¶ms), 12); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
157 GREATEST_ASSERT_STR_EQ("hello irccd!", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
158 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
159 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
160 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
161 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
162 keywords_multiple(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
163 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
164 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
165 { "target", "irccd" }, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
166 { "source", "nightmare" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
167 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
168 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
169 .flags = IRC_SUBST_KEYWORDS, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
170 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
171 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
172 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
173 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
174 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
175 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello #{target} from #{source}!", ¶ms), 27); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
176 GREATEST_ASSERT_STR_EQ("hello irccd from nightmare!", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
177 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
178 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
179 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
180 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
181 keywords_adj_twice(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
182 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
183 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
184 { "target", "irccd" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
185 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
186 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
187 .flags = IRC_SUBST_KEYWORDS, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
188 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
189 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
190 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
191 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
192 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
193 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello #{target}#{target}!", ¶ms), 17); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
194 GREATEST_ASSERT_STR_EQ("hello irccdirccd!", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
195 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
196 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
197 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
198 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
199 keywords_missing(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
200 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
201 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
202 .flags = IRC_SUBST_KEYWORDS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
203 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
204 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
205 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
206 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello #{target}!", ¶ms), 7); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
207 GREATEST_ASSERT_STR_EQ("hello !", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
208 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
209 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
210 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
211 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
212 keywords_enomem(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
213 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
214 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
215 { "target", "irccd" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
216 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
217 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
218 .flags = IRC_SUBST_KEYWORDS, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
219 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
220 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
221 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
222 char buf[10] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
223 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
224 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello #{target}!", ¶ms), -1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
225 GREATEST_ASSERT_EQ(ENOMEM, errno); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
226 GREATEST_ASSERT_STR_EQ("", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
227 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
228 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
229 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
230 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
231 keywords_einval(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
232 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
233 struct irc_subst_keyword kw[] = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
234 { "target", "irccd" } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
235 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
236 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
237 .flags = IRC_SUBST_KEYWORDS, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
238 .keywords = kw, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
239 .keywordsz = IRC_UTIL_SIZE(kw) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
240 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
241 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
242 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
243 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello #{target!", ¶ms), -1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
244 GREATEST_ASSERT_EQ(EINVAL, errno); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
245 GREATEST_ASSERT_STR_EQ("", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
246 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
247 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
248 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
249 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
250 env_simple(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
251 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
252 const char *home = getenv("HOME"); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
253 char tmp[1024]; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
254 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
255 if (home) { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
256 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
257 .flags = IRC_SUBST_ENV, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
258 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
259 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
260 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
261 snprintf(tmp, sizeof (tmp), "my home is %s", home); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
262 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
263 GREATEST_ASSERT_EQ((size_t)irc_subst(buf, sizeof (buf), "my home is ${HOME}", ¶ms), strlen(tmp)); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
264 GREATEST_ASSERT_STR_EQ(tmp, buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
265 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
266 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
267 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
268 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
269 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
270 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
271 env_missing(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
272 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
273 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
274 .flags = IRC_SUBST_ENV, |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
275 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
276 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
277 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
278 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "value is ${HOPE_THIS_VAR_NOT_EXIST}", ¶ms), 9); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
279 GREATEST_ASSERT_STR_EQ("value is ", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
280 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
281 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
282 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
283 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
284 env_enomem(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
285 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
286 const char *home = getenv("HOME"); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
287 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
288 if (home) { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
289 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
290 .flags = IRC_SUBST_ENV |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
291 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
292 char buf[10]; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
293 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
294 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "value is ${HOME}", ¶ms), -1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
295 GREATEST_ASSERT_EQ(ENOMEM, errno); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
296 GREATEST_ASSERT_STR_EQ("", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
297 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
298 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
299 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
300 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
301 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
302 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
303 shell_simple(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
304 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
305 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
306 .flags = IRC_SUBST_SHELL |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
307 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
308 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
309 char tmp[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
310 time_t now = time(NULL); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
311 struct tm *cal = localtime(&now); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
312 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
313 strftime(tmp, sizeof (tmp), "year: %Y", cal); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
314 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
315 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "year: !{date +%Y}", ¶ms), 10); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
316 GREATEST_ASSERT_STR_EQ(tmp, buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
317 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
318 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
319 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
320 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
321 shell_no_new_line(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
322 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
323 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
324 .flags = IRC_SUBST_SHELL |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
325 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
326 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
327 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
328 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "hello !{printf world}", ¶ms), 11); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
329 GREATEST_ASSERT_STR_EQ("hello world", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
330 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
331 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
332 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
333 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
334 shattrs_simple(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
335 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
336 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
337 .flags = IRC_SUBST_SHELL_ATTRS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
338 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
339 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
340 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
341 /* On shell attributes, all components are optional. */ |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
342 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red}red@{}", ¶ms), 12); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
343 GREATEST_ASSERT_STR_EQ("\033[31mred\033[0m", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
344 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
345 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red,blue}red on blue@{}", ¶ms), 23); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
346 GREATEST_ASSERT_STR_EQ("\033[31;44mred on blue\033[0m", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
347 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
348 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red,blue,bold}bold red on blue@{}", ¶ms), 30); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
349 GREATEST_ASSERT_STR_EQ("\033[1;31;44mbold red on blue\033[0m", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
350 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
351 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
352 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
353 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
354 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
355 shattrs_enomem(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
356 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
357 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
358 .flags = IRC_SUBST_SHELL_ATTRS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
359 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
360 char buf[10] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
361 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
362 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red}hello world in red@{}", ¶ms), -1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
363 GREATEST_ASSERT_EQ(ENOMEM, errno); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
364 GREATEST_ASSERT_STR_EQ("", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
365 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
366 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
367 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
368 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
369 shattrs_invalid_color(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
370 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
371 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
372 .flags = IRC_SUBST_SHELL_ATTRS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
373 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
374 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
375 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
376 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{invalid}standard@{}", ¶ms), 15); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
377 GREATEST_ASSERT_STR_EQ("\033[mstandard\033[0m", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
378 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
379 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
380 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
381 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
382 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
383 ircattrs_simple(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
384 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
385 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
386 .flags = IRC_SUBST_IRC_ATTRS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
387 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
388 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
389 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
390 /* In IRC the foreground is required if the background is desired. */ |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
391 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red}red@{}", ¶ms), 6); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
392 GREATEST_ASSERT_STR_EQ("\x03""4red\x03", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
393 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
394 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red,blue}red on blue@{}", ¶ms), 16); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
395 GREATEST_ASSERT_STR_EQ("\x03""4,2red on blue\x03", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
396 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
397 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red,blue,bold}bold red on blue@{}", ¶ms), 22); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
398 GREATEST_ASSERT_STR_EQ("\x03" "4,2" "\x02" "bold red on blue\x03", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
399 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
400 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
401 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
402 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
403 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
404 ircattrs_enomem(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
405 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
406 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
407 .flags = IRC_SUBST_IRC_ATTRS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
408 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
409 char buf[10] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
410 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
411 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{red}hello world in red@{}", ¶ms), -1); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
412 GREATEST_ASSERT_EQ(ENOMEM, errno); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
413 GREATEST_ASSERT_STR_EQ("", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
414 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
415 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
416 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
417 GREATEST_TEST |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
418 ircattrs_invalid_color(void) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
419 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
420 struct irc_subst params = { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
421 .flags = IRC_SUBST_IRC_ATTRS |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
422 }; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
423 char buf[1024] = {0}; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
424 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
425 GREATEST_ASSERT_EQ(irc_subst(buf, sizeof (buf), "@{invalid}standard@{}", ¶ms), 10); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
426 GREATEST_ASSERT_STR_EQ("\x03" "standard" "\x03", buf); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
427 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
428 GREATEST_PASS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
429 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
430 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
431 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
432 GREATEST_SUITE(suite_basics) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
433 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
434 GREATEST_RUN_TEST(basics_test); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
435 GREATEST_RUN_TEST(basics_escape); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
436 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
437 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
438 GREATEST_SUITE(suite_disable) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
439 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
440 GREATEST_RUN_TEST(disable_date); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
441 GREATEST_RUN_TEST(disable_keywords); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
442 GREATEST_RUN_TEST(disable_env); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
443 GREATEST_RUN_TEST(disable_shell); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
444 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
445 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
446 GREATEST_SUITE(suite_keywords) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
447 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
448 GREATEST_RUN_TEST(keywords_simple); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
449 GREATEST_RUN_TEST(keywords_multiple); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
450 GREATEST_RUN_TEST(keywords_adj_twice); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
451 GREATEST_RUN_TEST(keywords_missing); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
452 GREATEST_RUN_TEST(keywords_enomem); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
453 GREATEST_RUN_TEST(keywords_einval); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
454 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
455 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
456 GREATEST_SUITE(suite_env) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
457 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
458 GREATEST_RUN_TEST(env_simple); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
459 GREATEST_RUN_TEST(env_missing); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
460 GREATEST_RUN_TEST(env_enomem); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
461 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
462 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
463 GREATEST_SUITE(suite_shell) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
464 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
465 GREATEST_RUN_TEST(shell_simple); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
466 GREATEST_RUN_TEST(shell_no_new_line); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
467 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
468 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
469 GREATEST_SUITE(suite_shattrs) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
470 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
471 GREATEST_RUN_TEST(shattrs_simple); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
472 GREATEST_RUN_TEST(shattrs_enomem); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
473 GREATEST_RUN_TEST(shattrs_invalid_color); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
474 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
475 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
476 GREATEST_SUITE(suite_ircattrs) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
477 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
478 GREATEST_RUN_TEST(ircattrs_simple); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
479 GREATEST_RUN_TEST(ircattrs_enomem); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
480 GREATEST_RUN_TEST(ircattrs_invalid_color); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
481 } |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
482 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
483 GREATEST_MAIN_DEFS(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
484 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
485 int |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
486 main(int argc, char **argv) |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
487 { |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
488 GREATEST_MAIN_BEGIN(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
489 GREATEST_RUN_SUITE(suite_basics); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
490 GREATEST_RUN_SUITE(suite_disable); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
491 GREATEST_RUN_SUITE(suite_keywords); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
492 GREATEST_RUN_SUITE(suite_env); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
493 GREATEST_RUN_SUITE(suite_shell); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
494 GREATEST_RUN_SUITE(suite_shattrs); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
495 GREATEST_RUN_SUITE(suite_ircattrs); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
496 GREATEST_MAIN_END(); |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
497 |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
498 return 0; |
b0451fc0a17d
irccd: add subst.h header
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
499 } |