diff tests/src/libirccd/command-server-kick/main.cpp @ 650:27896e9bcd9e

Tests: add invalid code checks - server-join -> invalid_password, - server-kick -> invalid_message (reason).
author David Demelier <markand@malikania.fr>
date Mon, 26 Mar 2018 20:46:02 +0200
parents 1fa9e5222e87
children 1081e45b8628
line wrap: on
line diff
--- a/tests/src/libirccd/command-server-kick/main.cpp	Mon Mar 26 20:30:15 2018 +0200
+++ b/tests/src/libirccd/command-server-kick/main.cpp	Mon Mar 26 20:46:02 2018 +0200
@@ -238,6 +238,32 @@
     BOOST_TEST(message["errorCategory"].template get<std::string>() == "server");
 }
 
+BOOST_AUTO_TEST_CASE(invalid_message)
+{
+    boost::system::error_code result;
+    nlohmann::json message;
+
+    ctl_->send({
+        { "command",    "server-kick"   },
+        { "server",     "test"          },
+        { "target",     "jean"          },
+        { "channel",    "#staff"        },
+        { "reason",     123456          }
+    });
+    ctl_->recv([&] (auto rresult, auto rmessage) {
+        result = rresult;
+        message = rmessage;
+    });
+
+    wait_for([&] {
+        return result;
+    });
+
+    BOOST_TEST(result == server_error::invalid_message);
+    BOOST_TEST(message["error"].template get<int>() == server_error::invalid_message);
+    BOOST_TEST(message["errorCategory"].template get<std::string>() == "server");
+}
+
 BOOST_AUTO_TEST_CASE(not_found)
 {
     boost::system::error_code result;