JsonHashTableTests.cpp 844 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #include "CppUnitTest.h"
  2. #include "JsonHashTable.h"
  3. using namespace Microsoft::VisualStudio::CppUnitTestFramework;
  4. namespace JsonGeneratorTests
  5. {
  6. TEST_CLASS(JsonHashTableTests)
  7. {
  8. JsonHashTable<2> hash;
  9. public:
  10. TEST_METHOD(Empty)
  11. {
  12. assertJsonIs("{}");
  13. }
  14. TEST_METHOD(OneString)
  15. {
  16. add("key", "value");
  17. assertJsonIs("{\"key\":\"value\"}");
  18. }
  19. private:
  20. template<typename T>
  21. void add(const char* key, T value)
  22. {
  23. hash.add(key, value);
  24. }
  25. void assertJsonIs(const char* expected)
  26. {
  27. char buffer[256];
  28. hash.writeTo(buffer, sizeof(buffer));
  29. Assert::AreEqual(expected, buffer);
  30. }
  31. };
  32. }