Chromium Code Reviews

Unified Diff: runtime/vm/json_test.cc

Issue 1497033003: - Remove the legacy debug protocol. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Address review comments. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
« no previous file with comments | « runtime/vm/json_stream.h ('k') | tests/standalone/coverage_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/json_test.cc
diff --git a/runtime/vm/json_test.cc b/runtime/vm/json_test.cc
index 6ca6760fba38b2ecbfc28b0c11ae060205d9a3ba..245bdd681e201fe1cffeeb887245523853f54c01 100644
--- a/runtime/vm/json_test.cc
+++ b/runtime/vm/json_test.cc
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
#include "platform/assert.h"
-#include "platform/json.h"
+#include "platform/text_buffer.h"
#include "vm/json_stream.h"
#include "vm/unit_test.h"
#include "vm/dart_api_impl.h"
@@ -11,131 +11,12 @@
namespace dart {
-TEST_CASE(JSON_ScanJSON) {
- const char* msg = "{ \"id\": 5, \"command\" : \"Debugger.pause\" }";
-
- JSONScanner scanner(msg);
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenIllegal);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenLBrace);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenString);
- EXPECT(scanner.IsStringLiteral("id"));
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenColon);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenInteger);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenComma);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenString);
- EXPECT(scanner.IsStringLiteral("command"));
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenColon);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenString);
- EXPECT(scanner.IsStringLiteral("Debugger.pause"));
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenRBrace);
- scanner.Scan();
- EXPECT_EQ(scanner.CurrentToken(), JSONScanner::TokenEOM);
-}
-
-
-TEST_CASE(JSON_SyntaxError) {
- const char* jobj = "{ \"id\": 5, "
- " \"command\" : \"Debugger.stop\"" // Missing comma.
- " \"params\" : { "
- " \"url\" : \"blah.dart\", " // Missing comma.
- " \"line\": 111, "
- " },"
- " \"foo\": \"outer foo\", "
- "}";
- JSONReader reader(jobj);
- bool found;
-
- found = reader.Seek("id");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kInteger);
- found = reader.Seek("params");
- EXPECT(!found);
- EXPECT(reader.Error());
- EXPECT_EQ(reader.Type(), JSONReader::kNone);
- EXPECT_EQ(0, reader.ValueLen());
- EXPECT(reader.ValueChars() == NULL);
-}
-
-
-TEST_CASE(JSON_JSONReader) {
- const char* jobj = "{ \"id\": 5, "
- " \"command\" : \"Debugger.setBreakpoint\","
- " \"params\" : { "
- " \"url\" : \"blah.dart\", "
- " \"foo\" : [null, 1, { }, \"bar\", true, false],"
- " \"line\": 111, "
- " },"
- " \"foo\": \"outer foo\", "
- " \"quote\": \"\\\"\", "
- " \"white\": \"\\t \\n\", "
- "}";
-
- JSONReader reader(jobj);
- bool found;
- char s[128];
-
- found = reader.Seek("id");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kInteger);
- found = reader.Seek("foo");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kString);
- EXPECT(reader.IsStringLiteral("outer foo"));
-
- found = reader.Seek("quote");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kString);
- reader.GetRawValueChars(s, sizeof s);
- EXPECT_STREQ("\\\"", s);
- reader.GetDecodedValueChars(s, sizeof s);
- EXPECT_STREQ("\"", s);
-
- found = reader.Seek("white");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kString);
- reader.GetRawValueChars(s, sizeof s);
- EXPECT_STREQ("\\t \\n", s);
- reader.GetDecodedValueChars(s, sizeof s);
- EXPECT_STREQ("\t \n", s);
-
- found = reader.Seek("line");
- EXPECT(!found);
- found = reader.Seek("params");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kObject);
- reader.Set(reader.ValueChars());
- found = reader.Seek("foo");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kArray);
- found = reader.Seek("non-existing");
- EXPECT(!found);
- found = reader.Seek("line");
- EXPECT(found);
- EXPECT_EQ(reader.Type(), JSONReader::kInteger);
-}
-
-
TEST_CASE(JSON_TextBuffer) {
TextBuffer w(5); // Small enough to make buffer grow at least once.
w.Printf("{ \"%s\" : %d", "length", 175);
EXPECT_STREQ("{ \"length\" : 175", w.buf());
w.Printf(", \"%s\" : \"%s\" }", "command", "stopIt");
EXPECT_STREQ("{ \"length\" : 175, \"command\" : \"stopIt\" }", w.buf());
-
- JSONReader r(w.buf());
- bool found = r.Seek("command");
- EXPECT(found);
- EXPECT_EQ(r.Type(), JSONReader::kString);
- EXPECT(r.IsStringLiteral("stopIt"));
}
« no previous file with comments | « runtime/vm/json_stream.h ('k') | tests/standalone/coverage_test.dart » ('j') | no next file with comments »

Powered by Google App Engine