Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit1dc56d8

Browse files
committed
Merge pull requestFirebaseExtended#180 from ed7coyne/fix-modem-streaming
Add json parsing to modem streaming
2 parentsdf8372a +56bb2c5 commit1dc56d8

File tree

2 files changed

+11
-8
lines changed

2 files changed

+11
-8
lines changed

‎src/modem/stream-command.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,19 @@ bool StreamCommand::execute(const String& command,
2323
}
2424

2525
bool running =true;
26+
DynamicJsonBuffer buffer;
2627
while(running) {
2728
if (stream->available()) {
2829
std::string json;
2930
FirebaseStream::Event event = stream->read(json);
3031
out->print("+");
3132
out->print(FirebaseStream::EventToName(event).c_str());
3233
out->print("");
33-
// TODO(edcoyne): add json parsing and get real path.
34-
out->println("/dummy/path");
35-
out->println(json.length());
36-
out->println(json.c_str());
34+
constauto& object = buffer.parseObject(json.c_str());
35+
String data = object["data"];
36+
out->println(object["path"].asString());
37+
out->println(data.length());
38+
out->println(data);
3739
}elseif (in->available()) {
3840
String command = in->readLine();
3941
if (command =="END_STREAM") {

‎test/modem/stream-command_test.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ TEST_F(StreamCommandTest, streams) {
4646
.WillOnce(Return(path))
4747
.WillOnce(Return("END_STREAM"));
4848

49-
const Stringvalue("Test value");
49+
const String data ="Test Value";
50+
const Stringvalue(String("{\"path\" :\"/test/path\",\"data\" :\"") + data +"\"}");
5051
EXPECT_CALL(*stream_,available())
5152
.WillOnce(Return(true))
5253
.WillRepeatedly(Return(false));
@@ -63,12 +64,12 @@ TEST_F(StreamCommandTest, streams) {
6364
.WillOnce(Return(1));
6465
EXPECT_CALL(out_,print(String("")))
6566
.WillOnce(Return(1));
66-
EXPECT_CALL(out_,println(String("/dummy/path")))
67+
EXPECT_CALL(out_,println(path))
6768
.WillOnce(Return(1));
6869

69-
EXPECT_CALL(out_,println(value.length()))
70+
EXPECT_CALL(out_,println(data.length()))
7071
.WillOnce(Return(1));
71-
EXPECT_CALL(out_,println(value))
72+
EXPECT_CALL(out_,println(data))
7273
.WillOnce(Return(1));
7374

7475
EXPECT_CALL(out_,println(String("+OK")))

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp