aboutsummaryrefslogtreecommitdiff
path: root/unittests/Utility/JSONTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'unittests/Utility/JSONTest.cpp')
-rw-r--r--unittests/Utility/JSONTest.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/unittests/Utility/JSONTest.cpp b/unittests/Utility/JSONTest.cpp
new file mode 100644
index 000000000000..0c23350517ce
--- /dev/null
+++ b/unittests/Utility/JSONTest.cpp
@@ -0,0 +1,26 @@
+#include "gtest/gtest.h"
+
+#include "lldb/Utility/JSON.h"
+#include "lldb/Utility/StreamString.h"
+
+using namespace lldb_private;
+
+TEST(JSONTest, Dictionary) {
+ JSONObject o;
+ o.SetObject("key", std::make_shared<JSONString>("value"));
+
+ StreamString stream;
+ o.Write(stream);
+
+ ASSERT_EQ(stream.GetString(), R"({"key":"value"})");
+}
+
+TEST(JSONTest, Newlines) {
+ JSONObject o;
+ o.SetObject("key", std::make_shared<JSONString>("hello\nworld"));
+
+ StreamString stream;
+ o.Write(stream);
+
+ ASSERT_EQ(stream.GetString(), R"({"key":"hello\nworld"})");
+}