Issue67.cpp 907 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // Copyright Benoit Blanchon 2014-2015
  2. // MIT License
  3. //
  4. // Arduino JSON library
  5. // https://github.com/bblanchon/ArduinoJson
  6. #include <gtest/gtest.h>
  7. #include <ArduinoJson.h>
  8. class Issue67 : public testing::Test {
  9. public:
  10. void whenInputIs(double value) { _variant = value; }
  11. void outputMustBe(const char* expected) {
  12. char buffer[1024];
  13. _variant.printTo(buffer, sizeof(buffer));
  14. ASSERT_STREQ(expected, buffer);
  15. }
  16. private:
  17. JsonVariant _variant;
  18. };
  19. TEST_F(Issue67, BigPositiveDouble) {
  20. whenInputIs(1e100);
  21. outputMustBe("1e+100");
  22. }
  23. TEST_F(Issue67, BigNegativeDouble) {
  24. whenInputIs(-1e100);
  25. outputMustBe("-1e+100");
  26. }
  27. TEST_F(Issue67, Zero) {
  28. whenInputIs(0.0);
  29. outputMustBe("0.00");
  30. }
  31. TEST_F(Issue67, SmallPositiveDouble) {
  32. whenInputIs(111.111);
  33. outputMustBe("111.11");
  34. }
  35. TEST_F(Issue67, SmallNegativeDouble) {
  36. whenInputIs(-111.111);
  37. outputMustBe("-111.11");
  38. }