diff --git a/JsonGeneratorTests/JsonGeneratorTests.vcxproj b/JsonGeneratorTests/JsonGeneratorTests.vcxproj
index 404002f4..ecfdec6f 100644
--- a/JsonGeneratorTests/JsonGeneratorTests.vcxproj
+++ b/JsonGeneratorTests/JsonGeneratorTests.vcxproj
@@ -86,7 +86,8 @@
-
+
+
diff --git a/JsonGeneratorTests/JsonGeneratorTests.vcxproj.filters b/JsonGeneratorTests/JsonGeneratorTests.vcxproj.filters
index caee5ce1..33a74603 100644
--- a/JsonGeneratorTests/JsonGeneratorTests.vcxproj.filters
+++ b/JsonGeneratorTests/JsonGeneratorTests.vcxproj.filters
@@ -27,7 +27,10 @@
Source Files
-
+
+ Source Files
+
+
Source Files
diff --git a/JsonGeneratorTests/StringBuilderAppendEscapedTests.cpp b/JsonGeneratorTests/StringBuilderAppendEscapedTests.cpp
new file mode 100644
index 00000000..010b58db
--- /dev/null
+++ b/JsonGeneratorTests/StringBuilderAppendEscapedTests.cpp
@@ -0,0 +1,66 @@
+#include "CppUnitTest.h"
+#include "StringBuilder.h"
+
+using namespace Microsoft::VisualStudio::CppUnitTestFramework;
+
+namespace JsonGeneratorTests
+{
+ TEST_CLASS(StringBuilderAppendEscapedTests)
+ {
+ char buffer[16];
+ StringBuilder* sb;
+
+ public:
+
+ TEST_METHOD_INITIALIZE(Initialize)
+ {
+ sb = new StringBuilder(buffer, sizeof(buffer));
+ }
+
+ TEST_METHOD(InitialState)
+ {
+ assertResultIs("");
+ }
+
+ TEST_METHOD(EmptyString)
+ {
+ append("");
+ assertResultIs("\"\"");
+ }
+
+ TEST_METHOD(OneString)
+ {
+ append("ABCD");
+ assertResultIs("\"ABCD\"");
+ }
+
+ TEST_METHOD(OneTwoStrings)
+ {
+ append("ABCD");
+ append("EFGH");
+ assertResultIs("\"ABCD\"\"EFGH\"");
+ }
+
+ TEST_METHOD(OverCapacity)
+ {
+ append("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
+ assertResultIs("\"ABCDEFGHIJKLM\"");
+ }
+ /*
+ TEST_METHOD(SpecialChars)
+ {
+ append("\\\"\b\f\n\r");
+ assertResultIs("\\\\\\\"\\\b\\\f\\\n\\\r");
+ }
+ */
+ void append(const char* s)
+ {
+ sb->appendEscaped(s);
+ }
+
+ void assertResultIs(const char* expected)
+ {
+ Assert::AreEqual(expected, buffer);
+ }
+ };
+}
\ No newline at end of file
diff --git a/JsonGeneratorTests/StringBuilderTests.cpp b/JsonGeneratorTests/StringBuilderAppendTests.cpp
similarity index 79%
rename from JsonGeneratorTests/StringBuilderTests.cpp
rename to JsonGeneratorTests/StringBuilderAppendTests.cpp
index cf0823be..d5350a41 100644
--- a/JsonGeneratorTests/StringBuilderTests.cpp
+++ b/JsonGeneratorTests/StringBuilderAppendTests.cpp
@@ -5,12 +5,11 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework;
namespace JsonGeneratorTests
{
- TEST_CLASS(StringBuilderTests)
+ TEST_CLASS(StringBuilderAppendTests)
{
char buffer[16];
StringBuilder* sb;
-
public:
TEST_METHOD_INITIALIZE(Initialize)
@@ -23,32 +22,32 @@ namespace JsonGeneratorTests
assertResultIs("");
}
- TEST_METHOD(AppendEmptyString)
+ TEST_METHOD(EmptyString)
{
append("");
assertResultIs("");
}
- TEST_METHOD(AppendOneString)
+ TEST_METHOD(OneString)
{
append("ABCD");
assertResultIs("ABCD");
}
- TEST_METHOD(AppendOneTwoStrings)
+ TEST_METHOD(TwoStrings)
{
append("ABCD");
append("EFGH");
assertResultIs("ABCDEFGH");
}
- TEST_METHOD(AppendOverCapacity)
+ TEST_METHOD(OverCapacity)
{
append("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
assertResultIs("ABCDEFGHIJKLMNO");
}
- TEST_METHOD(AppendSpecialChars)
+ TEST_METHOD(SpecialChars)
{
append("\\\"\/\b\f\n\r");
assertResultIs("\\\"\/\b\f\n\r");