Simplified JsonArray tests

This commit is contained in:
Benoit Blanchon
2014-08-04 12:18:17 +02:00
parent d067cf0e84
commit 6771603a05

View File

@ -14,7 +14,7 @@ namespace JsonGeneratorTests
{ {
TEST_CLASS(JsonArrayTests) TEST_CLASS(JsonArrayTests)
{ {
JsonArray<2> arr; JsonArray<2> array;
char buffer[256]; char buffer[256];
public: public:
@ -26,98 +26,98 @@ namespace JsonGeneratorTests
TEST_METHOD(Null) TEST_METHOD(Null)
{ {
add((char*)0); array.add((char*) 0);
outputMustBe("[null]"); outputMustBe("[null]");
} }
TEST_METHOD(OneString) TEST_METHOD(OneString)
{ {
add("hello"); array.add("hello");
outputMustBe("[\"hello\"]"); outputMustBe("[\"hello\"]");
} }
TEST_METHOD(TwoStrings) TEST_METHOD(TwoStrings)
{ {
add("hello"); array.add("hello");
add("world"); array.add("world");
outputMustBe("[\"hello\",\"world\"]"); outputMustBe("[\"hello\",\"world\"]");
} }
TEST_METHOD(OneStringOverCapacity) TEST_METHOD(OneStringOverCapacity)
{ {
add("hello"); array.add("hello");
add("world"); array.add("world");
add("lost"); array.add("lost");
outputMustBe("[\"hello\",\"world\"]"); outputMustBe("[\"hello\",\"world\"]");
} }
TEST_METHOD(OneDoubleDefaultDigits) TEST_METHOD(OneDoubleDefaultDigits)
{ {
add(3.14159265358979323846); array.add(3.14159265358979323846);
outputMustBe("[3.14]"); outputMustBe("[3.14]");
} }
TEST_METHOD(OneDoubleFourDigits) TEST_METHOD(OneDoubleFourDigits)
{ {
add<4>(3.14159265358979323846); array.add<4>(3.14159265358979323846);
outputMustBe("[3.1416]"); outputMustBe("[3.1416]");
} }
TEST_METHOD(OneInteger) TEST_METHOD(OneInteger)
{ {
add(1); array.add(1);
outputMustBe("[1]"); outputMustBe("[1]");
} }
TEST_METHOD(TwoIntegers) TEST_METHOD(TwoIntegers)
{ {
add(1); array.add(1);
add(2); array.add(2);
outputMustBe("[1,2]"); outputMustBe("[1,2]");
} }
TEST_METHOD(OneIntegerOverCapacity) TEST_METHOD(OneIntegerOverCapacity)
{ {
add(1); array.add(1);
add(2); array.add(2);
add(3); array.add(3);
outputMustBe("[1,2]"); outputMustBe("[1,2]");
} }
TEST_METHOD(OneTrue) TEST_METHOD(OneTrue)
{ {
add(true); array.add(true);
outputMustBe("[true]"); outputMustBe("[true]");
} }
TEST_METHOD(OneFalse) TEST_METHOD(OneFalse)
{ {
add(false); array.add(false);
outputMustBe("[false]"); outputMustBe("[false]");
} }
TEST_METHOD(TwoBooleans) TEST_METHOD(TwoBooleans)
{ {
add(false); array.add(false);
add(true); array.add(true);
outputMustBe("[false,true]"); outputMustBe("[false,true]");
} }
TEST_METHOD(OneBooleanOverCapacity) TEST_METHOD(OneBooleanOverCapacity)
{ {
add(false); array.add(false);
add(true); array.add(true);
add(false); array.add(false);
outputMustBe("[false,true]"); outputMustBe("[false,true]");
} }
@ -126,7 +126,7 @@ namespace JsonGeneratorTests
{ {
JsonArray<1> nestedArray; JsonArray<1> nestedArray;
arr.add(nestedArray); array.add(nestedArray);
outputMustBe("[[]]"); outputMustBe("[[]]");
} }
@ -135,7 +135,7 @@ namespace JsonGeneratorTests
{ {
JsonObject<1> nestedObject; JsonObject<1> nestedObject;
arr.add(nestedObject); array.add(nestedObject);
outputMustBe("[{}]"); outputMustBe("[{}]");
} }
@ -145,28 +145,16 @@ namespace JsonGeneratorTests
JsonArray<1> nestedArray; JsonArray<1> nestedArray;
nestedArray.add(1); nestedArray.add(1);
arr.add(nestedArray); array.add(nestedArray);
outputMustBe("[[1]]"); outputMustBe("[[1]]");
} }
private: private:
template<typename T>
void add(T value)
{
arr.add(value);
}
template<int DIGITS>
void add(double value)
{
arr.add<DIGITS>(value);
}
void outputMustBe(const char* expected) void outputMustBe(const char* expected)
{ {
size_t n = arr.printTo(buffer, sizeof(buffer)); size_t n = array.printTo(buffer, sizeof(buffer));
Assert::AreEqual(expected, buffer); Assert::AreEqual(expected, buffer);
Assert::AreEqual(strlen(expected), n); Assert::AreEqual(strlen(expected), n);
} }