Mercurial > irccd
annotate tests/plugin-logger/main.cpp @ 454:8b615d37d303 release-2.1
Fix #642: plugins must be case sensitive
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 25 Jul 2017 17:08:19 +0200 |
parents | c6fbb6e0e06d |
children | 0b156b82b8c1 |
rev | line source |
---|---|
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
165 | 2 * main.cpp -- test logger plugin |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
394 | 4 * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr> |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 #include <fstream> |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 #include <iterator> |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 #include <gtest/gtest.h> |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 #include <irccd/irccd.hpp> |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 #include <irccd/logger.hpp> |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 #include <irccd/server.hpp> |
350 | 27 #include <irccd/service.hpp> |
28 #include <irccd/path.hpp> | |
29 | |
30 #include "plugin-tester.hpp" | |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 using namespace irccd; |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 class ServerTest : public Server { |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 public: |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
36 inline ServerTest() |
250 | 37 : Server("test") |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
38 { |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
39 } |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 }; |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 |
350 | 42 class LoggerTest : public PluginTester { |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 protected: |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
44 std::shared_ptr<ServerTest> m_server; |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
45 std::shared_ptr<Plugin> m_plugin; |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
47 std::string last() const |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
48 { |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
49 std::ifstream file(BINARYDIR "/log.txt"); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
51 return std::string(std::istreambuf_iterator<char>(file.rdbuf()), {}); |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
52 } |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 public: |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
55 LoggerTest() |
350 | 56 : m_server(std::make_shared<ServerTest>()) |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
57 { |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
58 remove(BINARYDIR "/log.txt"); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 |
350 | 60 m_irccd.plugins().setFormats("logger", { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
61 { "cmode", "cmode=#{server}:#{channel}:#{origin}:#{nickname}:#{mode}:#{arg}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
62 { "cnotice", "cnotice=#{server}:#{channel}:#{origin}:#{nickname}:#{message}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
63 { "join", "join=#{server}:#{channel}:#{origin}:#{nickname}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
64 { "kick", "kick=#{server}:#{channel}:#{origin}:#{nickname}:#{target}:#{reason}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
65 { "me", "me=#{server}:#{channel}:#{origin}:#{nickname}:#{message}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
66 { "message", "message=#{server}:#{channel}:#{origin}:#{nickname}:#{message}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
67 { "mode", "mode=#{server}:#{origin}:#{nickname}:#{mode}:#{arg}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
68 { "notice", "notice=#{server}:#{origin}:#{nickname}:#{message}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
69 { "part", "part=#{server}:#{channel}:#{origin}:#{nickname}:#{reason}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
70 { "query", "query=#{server}:#{origin}:#{nickname}:#{message}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
71 { "topic", "topic=#{server}:#{channel}:#{origin}:#{nickname}:#{topic}" }, |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
72 }); |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
73 } |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
75 void load(PluginConfig config = PluginConfig()) |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
76 { |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
77 if (config.count("path") == 0) |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
78 config.emplace("path", BINARYDIR "/log.txt"); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 |
350 | 80 m_irccd.plugins().setConfig("logger", config); |
81 m_irccd.plugins().load("logger", PLUGINDIR "/logger.js"); | |
82 m_plugin = m_irccd.plugins().require("logger"); | |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
83 } |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 }; |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 TEST_F(LoggerTest, formatChannelMode) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
87 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
88 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
90 m_plugin->onChannelMode(m_irccd, ChannelModeEvent{m_server, "jean!jean@localhost", "#staff", "+o", "jean"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
92 ASSERT_EQ("cmode=test:#staff:jean!jean@localhost:jean:+o:jean\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
94 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 TEST_F(LoggerTest, formatChannelNotice) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
96 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
97 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
98 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
99 m_plugin->onChannelNotice(m_irccd, ChannelNoticeEvent{m_server, "jean!jean@localhost", "#staff", "bonjour!"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
100 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
101 ASSERT_EQ("cnotice=test:#staff:jean!jean@localhost:jean:bonjour!\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
104 TEST_F(LoggerTest, formatJoin) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
105 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
106 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
107 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
108 m_plugin->onJoin(m_irccd, JoinEvent{m_server, "jean!jean@localhost", "#staff"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
109 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
110 ASSERT_EQ("join=test:#staff:jean!jean@localhost:jean\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
111 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
112 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
113 TEST_F(LoggerTest, formatKick) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
114 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
115 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
116 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
117 m_plugin->onKick(m_irccd, KickEvent{m_server, "jean!jean@localhost", "#staff", "badboy", "please do not flood"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
118 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
119 ASSERT_EQ("kick=test:#staff:jean!jean@localhost:jean:badboy:please do not flood\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
120 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
122 TEST_F(LoggerTest, formatMe) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
123 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
124 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
125 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
126 m_plugin->onMe(m_irccd, MeEvent{m_server, "jean!jean@localhost", "#staff", "is drinking water"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
127 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
128 ASSERT_EQ("me=test:#staff:jean!jean@localhost:jean:is drinking water\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
129 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
130 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
131 TEST_F(LoggerTest, formatMessage) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
132 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
133 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
134 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
135 m_plugin->onMessage(m_irccd, MessageEvent{m_server, "jean!jean@localhost", "#staff", "hello guys"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
136 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
137 ASSERT_EQ("message=test:#staff:jean!jean@localhost:jean:hello guys\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
138 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
139 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
140 TEST_F(LoggerTest, formatMode) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
141 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
142 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
143 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
144 m_plugin->onMode(m_irccd, ModeEvent{m_server, "jean!jean@localhost", "+i"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
145 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
146 ASSERT_EQ("mode=test:jean!jean@localhost:jean:+i:\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
147 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
148 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
149 TEST_F(LoggerTest, formatNotice) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
150 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
151 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
152 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
153 m_plugin->onNotice(m_irccd, NoticeEvent{m_server, "jean!jean@localhost", "tu veux voir mon chat ?"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
154 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
155 ASSERT_EQ("notice=test:jean!jean@localhost:jean:tu veux voir mon chat ?\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
156 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
157 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
158 TEST_F(LoggerTest, formatPart) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
159 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
160 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
161 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
162 m_plugin->onPart(m_irccd, PartEvent{m_server, "jean!jean@localhost", "#staff", "too noisy here"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
163 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
164 ASSERT_EQ("part=test:#staff:jean!jean@localhost:jean:too noisy here\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
165 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
166 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
167 TEST_F(LoggerTest, formatQuery) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
168 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
169 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
170 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
171 m_plugin->onQuery(m_irccd, QueryEvent{m_server, "jean!jean@localhost", "much irccd, wow"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
172 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
173 ASSERT_EQ("query=test:jean!jean@localhost:jean:much irccd, wow\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
174 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
175 |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
176 TEST_F(LoggerTest, formatTopic) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
177 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
178 load(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
179 |
210
2d10d7e661a0
Irccd: make object based IRC events, #522
David Demelier <markand@malikania.fr>
parents:
207
diff
changeset
|
180 m_plugin->onTopic(m_irccd, TopicEvent{m_server, "jean!jean@localhost", "#staff", "oh yeah yeaaaaaaaah"}); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
181 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
182 ASSERT_EQ("topic=test:#staff:jean!jean@localhost:jean:oh yeah yeaaaaaaaah\n", last()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
183 } |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
184 |
454
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
185 TEST_F(LoggerTest, case_fix_642) |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
186 { |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
187 load(); |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
188 |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
189 m_plugin->onMessage(m_irccd, MessageEvent{m_server, "jean!jean@localhost", "#STAFF", "hello guys"}); |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
190 |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
191 ASSERT_EQ("message=test:#staff:jean!jean@localhost:jean:hello guys\n", last()); |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
192 } |
8b615d37d303
Fix #642: plugins must be case sensitive
David Demelier <markand@malikania.fr>
parents:
394
diff
changeset
|
193 |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
194 int main(int argc, char **argv) |
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
195 { |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
196 path::setApplicationPath(argv[0]); |
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
197 testing::InitGoogleTest(&argc, argv); |
256
f04acabfbbe5
CMake: switch to NSIS with various fixes, closes #533
David Demelier <markand@malikania.fr>
parents:
250
diff
changeset
|
198 log::setLogger(std::make_unique<log::SilentLogger>()); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
199 |
207
6635b9187d71
Irccd: switch to 4 spaces indent, #518
David Demelier <markand@malikania.fr>
parents:
195
diff
changeset
|
200 return RUN_ALL_TESTS(); |
164
3b38931801ff
Plugin logger: add initial unit test
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
201 } |