Skip to content

Commit

Permalink
Tests for Writer, PrettyWriter move constructors
Browse files Browse the repository at this point in the history
  • Loading branch information
CreoValis committed Sep 19, 2016
1 parent 62dc107 commit 3b2156d
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 0 deletions.
21 changes: 21 additions & 0 deletions test/unittest/prettywritertest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -201,3 +201,24 @@ TEST(PrettyWriter, RawValue) {
"}",
buffer.GetString());
}

TEST(PrettyWriter, MoveCtor) {
StringBuffer buffer;
auto writerGen=[](StringBuffer &buffer) -> PrettyWriter<StringBuffer> {
PrettyWriter<StringBuffer> writer(buffer);
writer.StartObject();
writer.Key("a");
writer.Int(1);
return std::move(writer);
};

PrettyWriter<StringBuffer> writer(writerGen(buffer));
writer.EndObject();
EXPECT_TRUE(writer.IsComplete());
EXPECT_STREQ(
"{\n"
" \"a\": 1\n"
"}",
buffer.GetString());
}

16 changes: 16 additions & 0 deletions test/unittest/writertest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -495,3 +495,19 @@ TEST(Writer, RawValue) {
EXPECT_TRUE(writer.IsComplete());
EXPECT_STREQ("{\"a\":1,\"raw\":[\"Hello\\nWorld\", 123.456]}", buffer.GetString());
}

TEST(Writer, MoveCtor) {
StringBuffer buffer;
auto writerGen=[](StringBuffer &buffer) -> Writer<StringBuffer> {
Writer<StringBuffer> writer(buffer);
writer.StartObject();
writer.Key("a");
writer.Int(1);
return std::move(writer);
};

Writer<StringBuffer> writer(writerGen(buffer));
writer.EndObject();
EXPECT_TRUE(writer.IsComplete());
EXPECT_STREQ("{\"a\":1}", buffer.GetString());
}

0 comments on commit 3b2156d

Please sign in to comment.