| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- #include "CppUnitTest.h"
- #include "JsonArray.h"
- using namespace Microsoft::VisualStudio::CppUnitTestFramework;
- namespace JsonGeneratorTests
- {
- TEST_CLASS(JsonArrayTests)
- {
- JsonArray<2> arr;
-
- public:
-
- TEST_METHOD(EmptyArray)
- {
- AssertJsonIs("[]");
- }
- TEST_METHOD(AddNull)
- {
- arr.add((char*)0);
- AssertJsonIs("[null]");
- }
- TEST_METHOD(AddOneString)
- {
- arr.add("hello");
- AssertJsonIs("[\"hello\"]");
- }
- TEST_METHOD(AddTwoStrings)
- {
- arr.add("hello");
- arr.add("world");
- AssertJsonIs("[\"hello\",\"world\"]");
- }
- TEST_METHOD(AddOneStringOverCapacity)
- {
- arr.add("hello");
- arr.add("world");
- arr.add("lost");
- AssertJsonIs("[\"hello\",\"world\"]");
- }
- TEST_METHOD(AddOneNumber)
- {
- arr.add(3.14);
- AssertJsonIs("[3.14]");
- }
- TEST_METHOD(AddTwoNumbers)
- {
- arr.add(3.14);
- arr.add(2.72);
- AssertJsonIs("[3.14,2.72]");
- }
- TEST_METHOD(AddOneNumberOverCapacity)
- {
- arr.add(3.14);
- arr.add(2.72);
- arr.add(1.41);
- AssertJsonIs("[3.14,2.72]");
- }
- TEST_METHOD(AddTrue)
- {
- arr.add(true);
- AssertJsonIs("[true]");
- }
- TEST_METHOD(AddFalse)
- {
- arr.add(false);
- AssertJsonIs("[false]");
- }
- TEST_METHOD(AddTwoBooleans)
- {
- arr.add(false);
- arr.add(true);
- AssertJsonIs("[false,true]");
- }
- TEST_METHOD(AddOneBooleanOverCapacity)
- {
- arr.add(false);
- arr.add(true);
- arr.add(false);
- AssertJsonIs("[false,true]");
- }
- TEST_METHOD(AddOneEmptyNestedArray)
- {
- JsonArray<1> nestedArray;
-
- arr.add(nestedArray);
- AssertJsonIs("[[]]");
- }
- void AssertJsonIs(const char* expected)
- {
- char buffer[256];
- arr.writeTo(buffer, sizeof(buffer));
- Assert::AreEqual(expected, buffer);
- }
- };
- }
|