Skip to content

Commit 0d61b3b

Browse files
committed
fix json
1 parent 61fe565 commit 0d61b3b

File tree

2 files changed

+6
-114
lines changed

2 files changed

+6
-114
lines changed

src/trace_processor/importers/json/json_trace_tokenizer.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
#include <vector>
2424

2525
#include "perfetto/base/status.h"
26-
#include "perfetto/ext/base/string_view.h"
2726
#include "src/trace_processor/importers/common/chunked_trace_reader.h"
2827
#include "src/trace_processor/importers/common/parser_types.h"
2928
#include "src/trace_processor/importers/json/json_parser.h"

src/trace_processor/importers/json/json_trace_tokenizer_unittest.cc

Lines changed: 6 additions & 113 deletions
Original file line numberDiff line numberDiff line change
@@ -16,74 +16,15 @@
1616

1717
#include "src/trace_processor/importers/json/json_trace_tokenizer.h"
1818

19-
#include <json/value.h>
19+
#include <cstring>
20+
#include <string>
2021

21-
#include "src/trace_processor/importers/json/json_utils.h"
2222
#include "test/gtest_and_gmock.h"
2323

24-
namespace perfetto {
25-
namespace trace_processor {
26-
namespace {
27-
28-
TEST(JsonTraceTokenizerTest, ReadDictSuccess) {
29-
const char* start = R"({ "foo": "bar" })";
30-
const char* end = start + strlen(start);
31-
const char* next = nullptr;
32-
base::StringView value;
33-
ReadDictRes result = ReadOneJsonDict(start, end, &value, &next);
34-
35-
ASSERT_EQ(result, ReadDictRes::kFoundDict);
36-
ASSERT_EQ(next, end);
37-
38-
Json::Value parsed = *json::ParseJsonString(value);
39-
ASSERT_EQ(parsed["foo"].asString(), "bar");
40-
}
41-
42-
TEST(JsonTraceTokenizerTest, ReadDictQuotedBraces) {
43-
const char* start = R"({ "foo": "}\"bar{\\" })";
44-
const char* end = start + strlen(start);
45-
const char* next = nullptr;
46-
base::StringView value;
47-
ReadDictRes result = ReadOneJsonDict(start, end, &value, &next);
48-
49-
ASSERT_EQ(result, ReadDictRes::kFoundDict);
50-
ASSERT_EQ(next, end);
51-
52-
Json::Value parsed = *json::ParseJsonString(value);
53-
ASSERT_EQ(parsed["foo"].asString(), "}\"bar{\\");
54-
}
55-
56-
TEST(JsonTraceTokenizerTest, ReadDictTwoDicts) {
57-
const char* start = R"({"foo": 1}, {"bar": 2})";
58-
const char* middle = start + strlen(R"({"foo": 1})");
59-
const char* end = start + strlen(start);
60-
const char* next = nullptr;
61-
base::StringView value;
62-
63-
ASSERT_EQ(ReadOneJsonDict(start, end, &value, &next),
64-
ReadDictRes::kFoundDict);
65-
ASSERT_EQ(next, middle);
66-
67-
Json::Value parsed = *json::ParseJsonString(value);
68-
ASSERT_EQ(parsed["foo"].asInt(), 1);
69-
70-
ASSERT_EQ(ReadOneJsonDict(next, end, &value, &next), ReadDictRes::kFoundDict);
71-
ASSERT_EQ(next, end);
72-
73-
parsed = *json::ParseJsonString(value);
74-
ASSERT_EQ(parsed["bar"].asInt(), 2);
75-
}
76-
77-
TEST(JsonTraceTokenizerTest, ReadDictNeedMoreData) {
78-
const char* start = R"({"foo": 1)";
79-
const char* end = start + strlen(start);
80-
const char* next = nullptr;
81-
base::StringView value;
24+
#include <json/value.h>
8225

83-
ASSERT_EQ(ReadOneJsonDict(start, end, &value, &next),
84-
ReadDictRes::kNeedsMoreData);
85-
ASSERT_EQ(next, nullptr);
86-
}
26+
namespace perfetto::trace_processor {
27+
namespace {
8728

8829
TEST(JsonTraceTokenizerTest, ReadKeyIntValue) {
8930
const char* start = R"("Test": 01234, )";
@@ -225,53 +166,5 @@ TEST(JsonTraceTokenizerTest, ReadSystraceEndOfData) {
225166
ASSERT_EQ(next, end);
226167
}
227168

228-
TEST(JsonTraceTokenizerTest, ExtractValueForJsonKey) {
229-
std::optional<std::string> line;
230-
231-
ASSERT_TRUE(ExtractValueForJsonKey(R"({"ts": 149029})", "ts", &line).ok());
232-
ASSERT_EQ(*line, "149029");
233-
234-
ASSERT_TRUE(ExtractValueForJsonKey(R"(
235-
{
236-
"lots_of": "whitespace"
237-
}
238-
)",
239-
"lots_of", &line)
240-
.ok());
241-
ASSERT_EQ(*line, "whitespace");
242-
243-
ASSERT_TRUE(ExtractValueForJsonKey(R"(
244-
{
245-
"lots_of": "whitespace" ,
246-
"other": "value"
247-
}
248-
)",
249-
"other", &line)
250-
.ok());
251-
ASSERT_EQ(*line, "value");
252-
253-
ASSERT_TRUE(ExtractValueForJsonKey(R"({
254-
"ts": 149029, "foo": "bar"
255-
})",
256-
"ts", &line)
257-
.ok());
258-
ASSERT_EQ(*line, "149029");
259-
260-
ASSERT_TRUE(ExtractValueForJsonKey(R"({
261-
"ts": 149029, "foo": "bar"
262-
})",
263-
"foo", &line)
264-
.ok());
265-
ASSERT_EQ(*line, "bar");
266-
267-
ASSERT_TRUE(ExtractValueForJsonKey(R"({
268-
"nested": {"ts": 149029, "foo": "bar"}
269-
})",
270-
"nested", &line)
271-
.ok());
272-
ASSERT_EQ(*line, R"({"ts": 149029, "foo": "bar"})");
273-
}
274-
275169
} // namespace
276-
} // namespace trace_processor
277-
} // namespace perfetto
170+
} // namespace perfetto::trace_processor

0 commit comments

Comments
 (0)