Mercurial > irccd
comparison tests/cmd-rule-move/main.cpp @ 571:23fc81b1bd8f
Tests: add error code support in cmd-rule-* tests
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 29 Nov 2017 09:29:25 +0100 |
parents | c729f06c6f27 |
children |
comparison
equal
deleted
inserted
replaced
570:153e84e7b09b | 571:23fc81b1bd8f |
---|---|
360 BOOST_TEST(json_util::contains(events, "onMessage")); | 360 BOOST_TEST(json_util::contains(events, "onMessage")); |
361 BOOST_TEST(result["list"][2]["action"].get<std::string>() == "drop"); | 361 BOOST_TEST(result["list"][2]["action"].get<std::string>() == "drop"); |
362 } | 362 } |
363 } | 363 } |
364 | 364 |
365 BOOST_AUTO_TEST_CASE(out_of_bounds) | 365 BOOST_AUTO_TEST_SUITE(errors) |
366 { | 366 |
367 nlohmann::json result; | 367 BOOST_AUTO_TEST_CASE(invalid_index_1_from) |
368 | 368 { |
369 ctl_->send({ | 369 boost::system::error_code result; |
370 { "command", "rule-move" }, | 370 |
371 { "from", 1024 }, | 371 ctl_->send({ |
372 { "command", "rule-move" }, | |
373 { "from", -100 }, | |
372 { "to", 0 } | 374 { "to", 0 } |
373 }); | 375 }); |
374 ctl_->recv([&] (auto, auto msg) { | 376 ctl_->recv([&] (auto code, auto) { |
375 result = msg; | 377 result = code; |
376 }); | 378 }); |
377 | 379 |
378 wait_for([&] () { | 380 wait_for([&] { |
379 return result.is_object(); | 381 return result; |
380 }); | 382 }); |
381 | 383 |
382 // TODO: error code | 384 BOOST_ASSERT(result == rule_error::invalid_index); |
383 BOOST_TEST(result.is_object()); | 385 } |
384 BOOST_TEST(result.count("error")); | 386 |
387 BOOST_AUTO_TEST_CASE(invalid_index_1_to) | |
388 { | |
389 boost::system::error_code result; | |
390 | |
391 ctl_->send({ | |
392 { "command", "rule-move" }, | |
393 { "from", 0 }, | |
394 { "to", -100 } | |
395 }); | |
396 ctl_->recv([&] (auto code, auto) { | |
397 result = code; | |
398 }); | |
399 | |
400 wait_for([&] { | |
401 return result; | |
402 }); | |
403 | |
404 BOOST_ASSERT(result == rule_error::invalid_index); | |
405 } | |
406 | |
407 BOOST_AUTO_TEST_CASE(invalid_index_2_from) | |
408 { | |
409 boost::system::error_code result; | |
410 | |
411 ctl_->send({ | |
412 { "command", "rule-move" }, | |
413 { "from", 100 }, | |
414 { "to", 0 } | |
415 }); | |
416 ctl_->recv([&] (auto code, auto) { | |
417 result = code; | |
418 }); | |
419 | |
420 wait_for([&] { | |
421 return result; | |
422 }); | |
423 | |
424 BOOST_ASSERT(result == rule_error::invalid_index); | |
425 } | |
426 | |
427 BOOST_AUTO_TEST_CASE(invalid_index_3_from) | |
428 { | |
429 boost::system::error_code result; | |
430 | |
431 ctl_->send({ | |
432 { "command", "rule-move" }, | |
433 { "from", "notaint" }, | |
434 { "to", 0 } | |
435 }); | |
436 ctl_->recv([&] (auto code, auto) { | |
437 result = code; | |
438 }); | |
439 | |
440 wait_for([&] { | |
441 return result; | |
442 }); | |
443 | |
444 BOOST_ASSERT(result == rule_error::invalid_index); | |
445 } | |
446 | |
447 BOOST_AUTO_TEST_CASE(invalid_index_3_to) | |
448 { | |
449 boost::system::error_code result; | |
450 | |
451 ctl_->send({ | |
452 { "command", "rule-move" }, | |
453 { "from", 0 }, | |
454 { "to", "notaint" } | |
455 }); | |
456 ctl_->recv([&] (auto code, auto) { | |
457 result = code; | |
458 }); | |
459 | |
460 wait_for([&] { | |
461 return result; | |
462 }); | |
463 | |
464 BOOST_ASSERT(result == rule_error::invalid_index); | |
385 } | 465 } |
386 | 466 |
387 BOOST_AUTO_TEST_SUITE_END() | 467 BOOST_AUTO_TEST_SUITE_END() |
388 | 468 |
469 BOOST_AUTO_TEST_SUITE_END() | |
470 | |
389 } // !irccd | 471 } // !irccd |