isInteger.cpp 879 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // ArduinoJson - arduinojson.org
  2. // Copyright Benoit Blanchon 2014-2018
  3. // MIT License
  4. #include <ArduinoJson/Numbers/isInteger.hpp>
  5. #include <catch.hpp>
  6. using namespace ARDUINOJSON_NAMESPACE;
  7. TEST_CASE("isInteger()") {
  8. SECTION("Null") {
  9. REQUIRE(isInteger(NULL) == false);
  10. }
  11. SECTION("Empty string") {
  12. REQUIRE(isInteger("") == false);
  13. }
  14. SECTION("FloatNotInteger") {
  15. REQUIRE(isInteger("3.14") == false);
  16. REQUIRE(isInteger("-3.14") == false);
  17. REQUIRE(isInteger("+3.14") == false);
  18. }
  19. SECTION("Spaces") {
  20. REQUIRE(isInteger("42 ") == false);
  21. REQUIRE(isInteger(" 42") == false);
  22. }
  23. SECTION("Valid") {
  24. REQUIRE(isInteger("42") == true);
  25. REQUIRE(isInteger("-42") == true);
  26. REQUIRE(isInteger("+42") == true);
  27. }
  28. SECTION("ExtraSign") {
  29. REQUIRE(isInteger("--42") == false);
  30. REQUIRE(isInteger("++42") == false);
  31. }
  32. }