comparison tests/src/libirccd/command-rule-remove/main.cpp @ 773:8c44bbcbbab9

Misc: style, cleanup and update
author David Demelier <markand@malikania.fr>
date Fri, 26 Oct 2018 13:01:00 +0200
parents 35c1517d705d
children
comparison
equal deleted inserted replaced
772:f5ccf65ae929 773:8c44bbcbbab9
29 29
30 namespace { 30 namespace {
31 31
32 class rule_remove_fixture : public command_fixture { 32 class rule_remove_fixture : public command_fixture {
33 public: 33 public:
34 rule_remove_fixture() 34 rule_remove_fixture()
35 { 35 {
36 irccd_.rules().add(rule( 36 irccd_.rules().add(rule{
37 { "s1", "s2" }, 37 { "s1", "s2" },
38 { "c1", "c2" }, 38 { "c1", "c2" },
39 { "o1", "o2" }, 39 { "o1", "o2" },
40 { "p1", "p2" }, 40 { "p1", "p2" },
41 { "onMessage", "onCommand" }, 41 { "onMessage", "onCommand" },
42 rule::action::drop 42 rule::action_type::drop
43 )); 43 });
44 irccd_.rules().add(rule( 44 irccd_.rules().add(rule{
45 { "s1", }, 45 { "s1", },
46 { "c1", }, 46 { "c1", },
47 { "o1", }, 47 { "o1", },
48 { "p1", }, 48 { "p1", },
49 { "onMessage", }, 49 { "onMessage", },
50 rule::action::accept 50 rule::action_type::accept
51 )); 51 });
52 } 52 }
53 }; 53 };
54 54
55 BOOST_FIXTURE_TEST_SUITE(rule_remove_fixture_suite, rule_remove_fixture) 55 BOOST_FIXTURE_TEST_SUITE(rule_remove_fixture_suite, rule_remove_fixture)
56 56
57 BOOST_AUTO_TEST_CASE(basic) 57 BOOST_AUTO_TEST_CASE(basic)
58 { 58 {
59 request({ 59 request({
60 { "command", "rule-remove" }, 60 { "command", "rule-remove" },
61 { "index", 1 } 61 { "index", 1 }
62 }); 62 });
63 63
64 const auto [json, code] = request({{ "command", "rule-list" }}); 64 const auto [json, code] = request({{ "command", "rule-list" }});
65 65
66 BOOST_TEST(!code); 66 BOOST_TEST(!code);
67 BOOST_TEST(json["list"].is_array()); 67 BOOST_TEST(json["list"].is_array());
68 BOOST_TEST(json["list"].size() == 1U); 68 BOOST_TEST(json["list"].size() == 1U);
69 69
70 auto servers = json["list"][0]["servers"]; 70 auto servers = json["list"][0]["servers"];
71 auto channels = json["list"][0]["channels"]; 71 auto channels = json["list"][0]["channels"];
72 auto plugins = json["list"][0]["plugins"]; 72 auto plugins = json["list"][0]["plugins"];
73 auto events = json["list"][0]["events"]; 73 auto events = json["list"][0]["events"];
74 74
75 BOOST_TEST(json_util::contains(servers, "s1")); 75 BOOST_TEST(json_util::contains(servers, "s1"));
76 BOOST_TEST(json_util::contains(servers, "s2")); 76 BOOST_TEST(json_util::contains(servers, "s2"));
77 BOOST_TEST(json_util::contains(channels, "c1")); 77 BOOST_TEST(json_util::contains(channels, "c1"));
78 BOOST_TEST(json_util::contains(channels, "c2")); 78 BOOST_TEST(json_util::contains(channels, "c2"));
79 BOOST_TEST(json_util::contains(plugins, "p1")); 79 BOOST_TEST(json_util::contains(plugins, "p1"));
80 BOOST_TEST(json_util::contains(plugins, "p2")); 80 BOOST_TEST(json_util::contains(plugins, "p2"));
81 BOOST_TEST(json_util::contains(events, "onMessage")); 81 BOOST_TEST(json_util::contains(events, "onMessage"));
82 BOOST_TEST(json_util::contains(events, "onCommand")); 82 BOOST_TEST(json_util::contains(events, "onCommand"));
83 BOOST_TEST(json["list"][0]["action"].get<std::string>() == "drop"); 83 BOOST_TEST(json["list"][0]["action"].get<std::string>() == "drop");
84 } 84 }
85 85
86 BOOST_AUTO_TEST_SUITE(errors) 86 BOOST_AUTO_TEST_SUITE(errors)
87 87
88 BOOST_AUTO_TEST_CASE(invalid_index_1) 88 BOOST_AUTO_TEST_CASE(invalid_index_1)
89 { 89 {
90 const auto [json, code] = request({ 90 const auto [json, code] = request({
91 { "command", "rule-remove" }, 91 { "command", "rule-remove" },
92 { "index", -100 } 92 { "index", -100 }
93 }); 93 });
94 94
95 BOOST_TEST(code == rule_error::invalid_index); 95 BOOST_TEST(code == rule_error::invalid_index);
96 BOOST_TEST(json["error"].get<int>() == rule_error::invalid_index); 96 BOOST_TEST(json["error"].get<int>() == rule_error::invalid_index);
97 BOOST_TEST(json["errorCategory"].get<std::string>() == "rule"); 97 BOOST_TEST(json["errorCategory"].get<std::string>() == "rule");
98 } 98 }
99 99
100 BOOST_AUTO_TEST_CASE(invalid_index_2) 100 BOOST_AUTO_TEST_CASE(invalid_index_2)
101 { 101 {
102 const auto [json, code] = request({ 102 const auto [json, code] = request({
103 { "command", "rule-remove" }, 103 { "command", "rule-remove" },
104 { "index", 100 } 104 { "index", 100 }
105 }); 105 });
106 106
107 BOOST_TEST(code == rule_error::invalid_index); 107 BOOST_TEST(code == rule_error::invalid_index);
108 BOOST_TEST(json["error"].get<int>() == rule_error::invalid_index); 108 BOOST_TEST(json["error"].get<int>() == rule_error::invalid_index);
109 BOOST_TEST(json["errorCategory"].get<std::string>() == "rule"); 109 BOOST_TEST(json["errorCategory"].get<std::string>() == "rule");
110 } 110 }
111 111
112 BOOST_AUTO_TEST_CASE(invalid_index_3) 112 BOOST_AUTO_TEST_CASE(invalid_index_3)
113 { 113 {
114 const auto [json, code] = request({ 114 const auto [json, code] = request({
115 { "command", "rule-remove" }, 115 { "command", "rule-remove" },
116 { "index", "notaint" } 116 { "index", "notaint" }
117 }); 117 });
118 118
119 BOOST_TEST(code == rule_error::invalid_index); 119 BOOST_TEST(code == rule_error::invalid_index);
120 BOOST_TEST(json["error"].get<int>() == rule_error::invalid_index); 120 BOOST_TEST(json["error"].get<int>() == rule_error::invalid_index);
121 BOOST_TEST(json["errorCategory"].get<std::string>() == "rule"); 121 BOOST_TEST(json["errorCategory"].get<std::string>() == "rule");
122 } 122 }
123 123
124 BOOST_AUTO_TEST_SUITE_END() 124 BOOST_AUTO_TEST_SUITE_END()
125 125
126 BOOST_AUTO_TEST_SUITE_END() 126 BOOST_AUTO_TEST_SUITE_END()