diff tests/src/libirccd/command-server-invite/main.cpp @ 737:190b16cfa848

Tests: improve command tests readability
author David Demelier <markand@malikania.fr>
date Tue, 24 Jul 2018 23:01:00 +0200
parents 64839725f346
children 8876412ba633
line wrap: on
line diff
--- a/tests/src/libirccd/command-server-invite/main.cpp	Tue Jul 24 22:14:00 2018 +0200
+++ b/tests/src/libirccd/command-server-invite/main.cpp	Tue Jul 24 23:01:00 2018 +0200
@@ -45,7 +45,7 @@
 
 BOOST_AUTO_TEST_CASE(basic)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite"     },
         { "server",     "test"              },
         { "target",     "francis"           },
@@ -54,6 +54,7 @@
 
     const auto cmd = server_->find("invite").back();
 
+    BOOST_TEST(!code);
     BOOST_TEST(std::any_cast<std::string>(cmd[0]) == "francis");
     BOOST_TEST(std::any_cast<std::string>(cmd[1]) == "#music");
 }
@@ -62,100 +63,100 @@
 
 BOOST_AUTO_TEST_CASE(invalid_identifier_1)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     123456          },
         { "target",     "francis"       },
         { "channel",    "#music"        }
     });
 
-    BOOST_TEST(result.second == server_error::invalid_identifier);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_identifier);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::invalid_identifier);
+    BOOST_TEST(json["error"].get<int>() == server_error::invalid_identifier);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_CASE(invalid_identifier_2)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     ""              },
         { "target",     "francis"       },
         { "channel",    "#music"        }
     });
 
-    BOOST_TEST(result.second == server_error::invalid_identifier);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_identifier);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::invalid_identifier);
+    BOOST_TEST(json["error"].get<int>() == server_error::invalid_identifier);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_CASE(invalid_nickname_1)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     "test"          },
         { "target",     ""              },
         { "channel",    "#music"        }
     });
 
-    BOOST_TEST(result.second == server_error::invalid_nickname);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_nickname);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::invalid_nickname);
+    BOOST_TEST(json["error"].get<int>() == server_error::invalid_nickname);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_CASE(invalid_nickname_2)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     "test"          },
         { "target",     123456          },
         { "channel",    "#music"        }
     });
 
-    BOOST_TEST(result.second == server_error::invalid_nickname);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_nickname);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::invalid_nickname);
+    BOOST_TEST(json["error"].get<int>() == server_error::invalid_nickname);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_CASE(invalid_channel_1)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     "test"          },
         { "target",     "jean"          },
         { "channel",    ""              }
     });
 
-    BOOST_TEST(result.second == server_error::invalid_channel);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_channel);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::invalid_channel);
+    BOOST_TEST(json["error"].get<int>() == server_error::invalid_channel);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_CASE(invalid_channel_2)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     "test"          },
         { "target",     "jean"          },
         { "channel",    123456          }
     });
 
-    BOOST_TEST(result.second == server_error::invalid_channel);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_channel);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::invalid_channel);
+    BOOST_TEST(json["error"].get<int>() == server_error::invalid_channel);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_CASE(not_found)
 {
-    const auto result = request({
+    const auto [json, code] = request({
         { "command",    "server-invite" },
         { "server",     "unknown"       },
         { "target",     "francis"       },
         { "channel",    "#music"        }
     });
 
-    BOOST_TEST(result.second == server_error::not_found);
-    BOOST_TEST(result.first["error"].template get<int>() == server_error::not_found);
-    BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server");
+    BOOST_TEST(code == server_error::not_found);
+    BOOST_TEST(json["error"].get<int>() == server_error::not_found);
+    BOOST_TEST(json["errorCategory"].get<std::string>() == "server");
 }
 
 BOOST_AUTO_TEST_SUITE_END()