annotate tests/src/server-connect-command/main.cpp @ 581:a51b5dd5b761

Tests: put everything in src/
author David Demelier <markand@malikania.fr>
date Mon, 04 Dec 2017 14:12:13 +0100
parents tests/server-connect-command/main.cpp@84ea13c850f4
children f462cc16b517
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 /*
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 * main.cpp -- test server-connect remote command
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 *
394
c6fbb6e0e06d Happy new year!
David Demelier <markand@malikania.fr>
parents: 347
diff changeset
4 * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 *
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 * Permission to use, copy, modify, and/or distribute this software for any
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 * purpose with or without fee is hereby granted, provided that the above
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 * copyright notice and this permission notice appear in all copies.
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 *
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 */
fa184c88b2c3 Tests: add test for server-connect, #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-connect"
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
20 #include <boost/test/unit_test.hpp>
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
21
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
22 #include <irccd/server_service.hpp>
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
23
578
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
24 #include <journal_server.hpp>
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
25 #include <command_test.hpp>
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
26
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
27 namespace irccd {
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
28
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
29 BOOST_FIXTURE_TEST_SUITE(server_connect_test_suite, command_test<server_connect_command>)
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
30
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
31 BOOST_AUTO_TEST_CASE(minimal)
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
32 {
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
33 nlohmann::json result;
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
34
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
35 ctl_->send({
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
36 { "command", "server-connect" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
37 { "name", "local" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
38 { "host", "irc.example.org" }
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
39 });
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
40 ctl_->recv([&] (auto, auto msg) {
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
41 result = msg;
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
42 });
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
43
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
44 wait_for([&] () {
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
45 return result.is_object();
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
46 });
311
fa184c88b2c3 Tests: add test for server-connect, #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 auto s = daemon_->servers().get("local");
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
49
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
50 BOOST_TEST(s);
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
51 BOOST_TEST(s->name() == "local");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
52 BOOST_TEST(s->host() == "irc.example.org");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
53 BOOST_TEST(s->port() == 6667U);
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
54 }
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
55
564
b8ebbc74da0c Tests: fix test-cmd-server-connect without SSL
David Demelier <markand@malikania.fr>
parents: 558
diff changeset
56 #if defined(HAVE_SSL)
b8ebbc74da0c Tests: fix test-cmd-server-connect without SSL
David Demelier <markand@malikania.fr>
parents: 558
diff changeset
57
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
58 BOOST_AUTO_TEST_CASE(full)
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
59 {
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
60 nlohmann::json result;
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
61
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
62 ctl_->send({
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
63 { "command", "server-connect" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
64 { "name", "local2" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
65 { "host", "irc.example2.org" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
66 { "password", "nonono" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
67 { "nickname", "francis" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
68 { "realname", "the_francis" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
69 { "username", "frc" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
70 { "ctcpVersion", "ultra bot" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
71 { "commandChar", "::" },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
72 { "port", 18000 },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
73 { "ssl", true },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
74 { "sslVerify", true },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
75 { "autoRejoin", true },
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
76 { "joinInvite", true }
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
77 });
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
78 ctl_->recv([&] (auto, auto msg) {
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
79 result = msg;
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
80 });
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
81
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
82 wait_for([&] () {
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
83 return result.is_object();
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
84 });
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
85
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
86 auto s = daemon_->servers().get("local2");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
87
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
88 BOOST_TEST(s);
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
89 BOOST_TEST(s->name() == "local2");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
90 BOOST_TEST(s->host() == "irc.example2.org");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
91 BOOST_TEST(s->port() == 18000U);
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
92 BOOST_TEST(s->password() == "nonono");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
93 BOOST_TEST(s->nickname() == "francis");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
94 BOOST_TEST(s->realname() == "the_francis");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
95 BOOST_TEST(s->username() == "frc");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
96 BOOST_TEST(s->command_char() == "::");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
97 BOOST_TEST(s->ctcp_version() == "ultra bot");
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
98 BOOST_TEST(s->flags() & server::ssl);
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
99 BOOST_TEST(s->flags() & server::ssl_verify);
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
100 BOOST_TEST(s->flags() & server::auto_rejoin);
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
101 BOOST_TEST(s->flags() & server::join_invite);
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
102 }
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
103
564
b8ebbc74da0c Tests: fix test-cmd-server-connect without SSL
David Demelier <markand@malikania.fr>
parents: 558
diff changeset
104 #endif // !HAVE_SSL
b8ebbc74da0c Tests: fix test-cmd-server-connect without SSL
David Demelier <markand@malikania.fr>
parents: 558
diff changeset
105
578
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
106 BOOST_AUTO_TEST_SUITE(errors)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
107
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
108 BOOST_AUTO_TEST_CASE(already_exists)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
109 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
110 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
111
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
112 daemon_->servers().add(std::make_unique<journal_server>(service_, "local"));
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
113 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
114 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
115 { "name", "local" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
116 { "host", "127.0.0.1" }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
117 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
118 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
119 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
120 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
121
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
122 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
123 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
124 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
125
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
126 BOOST_ASSERT(result == server_error::already_exists);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
127 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
128
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
129 BOOST_AUTO_TEST_CASE(invalid_hostname_1)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
130 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
131 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
132
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
133 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
134 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
135 { "name", "new" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
136 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
137 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
138 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
139 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
140
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
141 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
142 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
143 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
144
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
145 BOOST_ASSERT(result == server_error::invalid_hostname);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
146 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
147
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
148 BOOST_AUTO_TEST_CASE(invalid_hostname_2)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
149 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
150 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
151
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
152 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
153 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
154 { "name", "new" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
155 { "host", 123456 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
156 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
157 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
158 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
159 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
160
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
161 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
162 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
163 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
164
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
165 BOOST_ASSERT(result == server_error::invalid_hostname);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
166 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
167
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
168 BOOST_AUTO_TEST_CASE(invalid_identifier_1)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
169 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
170 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
171
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
172 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
173 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
174 { "name", "" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
175 { "host", "127.0.0.1" }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
176 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
177 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
178 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
179 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
180
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
181 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
182 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
183 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
184
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
185 BOOST_ASSERT(result == server_error::invalid_identifier);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
186 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
187
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
188 BOOST_AUTO_TEST_CASE(invalid_identifier_2)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
189 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
190 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
191
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
192 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
193 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
194 { "name", 123456 },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
195 { "host", "127.0.0.1" }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
196 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
197 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
198 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
199 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
200
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
201 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
202 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
203 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
204
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
205 BOOST_ASSERT(result == server_error::invalid_identifier);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
206 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
207
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
208 BOOST_AUTO_TEST_CASE(invalid_port_1)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
209 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
210 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
211
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
212 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
213 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
214 { "name", "new" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
215 { "host", "127.0.0.1" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
216 { "port", "notaint" }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
217 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
218 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
219 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
220 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
221
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
222 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
223 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
224 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
225
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
226 BOOST_ASSERT(result == server_error::invalid_port_number);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
227 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
228
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
229 BOOST_AUTO_TEST_CASE(invalid_port_2)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
230 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
231 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
232
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
233 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
234 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
235 { "name", "new" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
236 { "host", "127.0.0.1" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
237 { "port", -123 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
238 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
239 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
240 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
241 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
242
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
243 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
244 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
245 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
246
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
247 BOOST_ASSERT(result == server_error::invalid_port_number);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
248 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
249
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
250 BOOST_AUTO_TEST_CASE(invalid_port_3)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
251 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
252 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
253
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
254 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
255 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
256 { "name", "new" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
257 { "host", "127.0.0.1" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
258 { "port", 1000000 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
259 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
260 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
261 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
262 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
263
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
264 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
265 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
266 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
267
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
268 BOOST_ASSERT(result == server_error::invalid_port_number);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
269 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
270
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
271 #if !defined(HAVE_SSL)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
272
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
273 BOOST_AUTO_TEST_CASE(ssl_disabled)
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
274 {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
275 boost::system::error_code result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
276
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
277 ctl_->send({
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
278 { "command", "server-connect" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
279 { "name", "new" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
280 { "host", "127.0.0.1" },
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
281 { "ssl", true }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
282 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
283 ctl_->recv([&] (auto code, auto) {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
284 result = code;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
285 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
286
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
287 wait_for([&] {
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
288 return result;
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
289 });
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
290
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
291 BOOST_ASSERT(result == server_error::ssl_disabled);
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
292 }
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
293
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
294 #endif
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
295
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
296 BOOST_AUTO_TEST_SUITE_END()
a8b892177909 Tests: add error code support in cmd-server-* tests
David Demelier <markand@malikania.fr>
parents: 564
diff changeset
297
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
298 BOOST_AUTO_TEST_SUITE_END()
311
fa184c88b2c3 Tests: add test for server-connect, #559
David Demelier <markand@malikania.fr>
parents:
diff changeset
299
558
f1ad428208d3 Tests: convert cmd-server-*, #593
David Demelier <markand@malikania.fr>
parents: 488
diff changeset
300 } // !irccd