MsgPackError.cpp 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // ArduinoJson - arduinojson.org
  2. // Copyright Benoit Blanchon 2014-2018
  3. // MIT License
  4. #include <ArduinoJson.h>
  5. #include <catch.hpp>
  6. void testStringification(MsgPackError error, std::string expected) {
  7. REQUIRE(error.c_str() == expected);
  8. }
  9. void testBoolification(MsgPackError error, bool expected) {
  10. CHECK(error == expected);
  11. }
  12. #define TEST_STRINGIFICATION(symbol) \
  13. testStringification(MsgPackError::symbol, #symbol)
  14. #define TEST_BOOLIFICATION(symbol, expected) \
  15. testBoolification(MsgPackError::symbol, expected)
  16. TEST_CASE("MsgPackError") {
  17. SECTION("c_str()") {
  18. TEST_STRINGIFICATION(Ok);
  19. TEST_STRINGIFICATION(NotSupported);
  20. TEST_STRINGIFICATION(NoMemory);
  21. TEST_STRINGIFICATION(TooDeep);
  22. TEST_STRINGIFICATION(IncompleteInput);
  23. }
  24. SECTION("as boolean") {
  25. TEST_BOOLIFICATION(Ok, false);
  26. TEST_BOOLIFICATION(NotSupported, true);
  27. TEST_BOOLIFICATION(NoMemory, true);
  28. TEST_BOOLIFICATION(TooDeep, true);
  29. TEST_BOOLIFICATION(IncompleteInput, true);
  30. }
  31. SECTION("ostream") {
  32. std::stringstream s;
  33. s << MsgPackError::NotSupported;
  34. REQUIRE(s.str() == "NotSupported");
  35. }
  36. }