Mercurial > irccd
annotate tests/src/libirccd/command-server-kick/main.cpp @ 757:97b356010785
Irccd: create (command|jsapi)::registry
Make two list of constructor functions to initialize all command and all
Javascript modules to avoid duplicating efforts in case of change.
While here, update test fixtures to load all of them for simplicity.
author | David Demelier <markand@malikania.fr> |
---|---|
date | Mon, 06 Aug 2018 21:27:00 +0200 |
parents | c216d148558d |
children | 35c1517d705d |
rev | line source |
---|---|
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * main.cpp -- test server-kick remote command |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
628
27587ff92a64
Misc: update copyrights
David Demelier <markand@malikania.fr>
parents:
624
diff
changeset
|
4 * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
19 #define BOOST_TEST_MODULE "server-kick" |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
20 #include <boost/test/unit_test.hpp> |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
21 |
757
97b356010785
Irccd: create (command|jsapi)::registry
David Demelier <markand@malikania.fr>
parents:
754
diff
changeset
|
22 #include <irccd/test/command_fixture.hpp> |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 |
757
97b356010785
Irccd: create (command|jsapi)::registry
David Demelier <markand@malikania.fr>
parents:
754
diff
changeset
|
24 namespace irccd::test { |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 namespace { |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 |
757
97b356010785
Irccd: create (command|jsapi)::registry
David Demelier <markand@malikania.fr>
parents:
754
diff
changeset
|
28 BOOST_FIXTURE_TEST_SUITE(server_kick_fixture_suite, command_fixture) |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
30 BOOST_AUTO_TEST_CASE(basic) |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
31 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
32 const auto [json, code] = request({ |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
33 { "command", "server-kick" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
34 { "server", "test" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
35 { "target", "francis" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
36 { "channel", "#staff" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
37 { "reason", "too noisy" } |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
38 }); |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
40 const auto cmd = server_->find("kick").back(); |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
41 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
42 BOOST_TEST(!code); |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
43 BOOST_TEST(std::any_cast<std::string>(cmd[1]) == "#staff"); |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
44 BOOST_TEST(std::any_cast<std::string>(cmd[0]) == "francis"); |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
45 BOOST_TEST(std::any_cast<std::string>(cmd[2]) == "too noisy"); |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 } |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
48 BOOST_AUTO_TEST_CASE(noreason) |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
50 const auto [json, code] = request({ |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
51 { "command", "server-kick" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
52 { "server", "test" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
53 { "target", "francis" }, |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
54 { "channel", "#staff" } |
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
55 }); |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
57 const auto cmd = server_->find("kick").back(); |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
59 BOOST_TEST(!code); |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
60 BOOST_TEST(std::any_cast<std::string>(cmd[1]) == "#staff"); |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
61 BOOST_TEST(std::any_cast<std::string>(cmd[0]) == "francis"); |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
733
diff
changeset
|
62 BOOST_TEST(std::any_cast<std::string>(cmd[2]) == ""); |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 } |
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
65 BOOST_AUTO_TEST_SUITE(errors) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
66 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
67 BOOST_AUTO_TEST_CASE(invalid_identifier_1) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
68 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
69 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
70 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
71 { "server", 123456 }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
72 { "target", "francis" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
73 { "channel", "#music" } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
74 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
75 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
76 BOOST_TEST(code == server_error::invalid_identifier); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
77 BOOST_TEST(json["error"].get<int>() == server_error::invalid_identifier); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
78 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
79 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
80 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
81 BOOST_AUTO_TEST_CASE(invalid_identifier_2) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
82 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
83 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
84 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
85 { "server", "" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
86 { "target", "francis" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
87 { "channel", "#music" } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
88 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
89 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
90 BOOST_TEST(code == server_error::invalid_identifier); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
91 BOOST_TEST(json["error"].get<int>() == server_error::invalid_identifier); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
92 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
93 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
94 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
95 BOOST_AUTO_TEST_CASE(invalid_nickname_1) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
96 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
97 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
98 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
99 { "server", "test" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
100 { "target", "" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
101 { "channel", "#music" } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
102 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
103 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
104 BOOST_TEST(code == server_error::invalid_nickname); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
105 BOOST_TEST(json["error"].get<int>() == server_error::invalid_nickname); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
106 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
107 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
108 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
109 BOOST_AUTO_TEST_CASE(invalid_nickname_2) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
110 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
111 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
112 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
113 { "server", "test" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
114 { "target", 123456 }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
115 { "channel", "#music" } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
116 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
117 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
118 BOOST_TEST(code == server_error::invalid_nickname); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
119 BOOST_TEST(json["error"].get<int>() == server_error::invalid_nickname); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
120 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
121 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
122 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
123 BOOST_AUTO_TEST_CASE(invalid_channel_1) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
124 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
125 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
126 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
127 { "server", "test" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
128 { "target", "jean" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
129 { "channel", "" } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
130 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
131 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
132 BOOST_TEST(code == server_error::invalid_channel); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
133 BOOST_TEST(json["error"].get<int>() == server_error::invalid_channel); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
134 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
135 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
136 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
137 BOOST_AUTO_TEST_CASE(invalid_channel_2) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
138 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
139 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
140 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
141 { "server", "test" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
142 { "target", "jean" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
143 { "channel", 123456 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
144 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
145 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
146 BOOST_TEST(code == server_error::invalid_channel); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
147 BOOST_TEST(json["error"].get<int>() == server_error::invalid_channel); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
148 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
149 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
150 |
650
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
151 BOOST_AUTO_TEST_CASE(invalid_message) |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
152 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
153 const auto [json, code] = request({ |
650
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
154 { "command", "server-kick" }, |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
155 { "server", "test" }, |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
156 { "target", "jean" }, |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
157 { "channel", "#staff" }, |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
158 { "reason", 123456 } |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
159 }); |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
160 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
161 BOOST_TEST(code == server_error::invalid_message); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
162 BOOST_TEST(json["error"].get<int>() == server_error::invalid_message); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
163 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
650
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
164 } |
27896e9bcd9e
Tests: add invalid code checks
David Demelier <markand@malikania.fr>
parents:
631
diff
changeset
|
165 |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
166 BOOST_AUTO_TEST_CASE(not_found) |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
167 { |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
168 const auto [json, code] = request({ |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
169 { "command", "server-kick" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
170 { "server", "unknown" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
171 { "target", "francis" }, |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
172 { "channel", "#music" } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
173 }); |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
174 |
737
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
175 BOOST_TEST(code == server_error::not_found); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
176 BOOST_TEST(json["error"].get<int>() == server_error::not_found); |
190b16cfa848
Tests: improve command tests readability
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
177 BOOST_TEST(json["errorCategory"].get<std::string>() == "server"); |
578
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
178 } |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
179 |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
180 BOOST_AUTO_TEST_SUITE_END() |
a8b892177909
Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents:
558
diff
changeset
|
181 |
558
f1ad428208d3
Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
182 BOOST_AUTO_TEST_SUITE_END() |
308
02b86903157f
Tests: add test for server-kick, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
183 |
723
e8c4ba5ed1c6
Tests: put code in anonymous namespaces, closes #889 @10m
David Demelier <markand@malikania.fr>
parents:
670
diff
changeset
|
184 } // !namespace |
e8c4ba5ed1c6
Tests: put code in anonymous namespaces, closes #889 @10m
David Demelier <markand@malikania.fr>
parents:
670
diff
changeset
|
185 |
757
97b356010785
Irccd: create (command|jsapi)::registry
David Demelier <markand@malikania.fr>
parents:
754
diff
changeset
|
186 } // !irccd::test |