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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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!", &params), 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), "$@#", &params), 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), " $ @ # ", &params), 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), "#", &params), 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), " # ", &params), 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), "#@", &params), 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), "##", &params), 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), "#!", &params), 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}", &params), 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}", &params), 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}#", &params), 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", &params), 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", &params), 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", &params), -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", &params), 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}", &params), 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}", &params), 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}", &params), 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}!", &params), 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}!", &params), 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}!", &params), 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}!", &params), 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}!", &params), -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!", &params), -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}", &params), 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}", &params), 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}", &params), -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}", &params), 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}", &params), 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@{}", &params), 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@{}", &params), 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@{}", &params), 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@{}", &params), -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@{}", &params), 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@{}", &params), 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@{}", &params), 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@{}", &params), 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@{}", &params), -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@{}", &params), 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 }