Commit 2c2716de authored by TH3CHARLie's avatar TH3CHARLie Committed by Alexander Alekhin

core(test): add test for YAML parse multiple documents

- added removal of temporary file
parent 53139e6e
...@@ -1674,4 +1674,33 @@ TEST(Core_InputOutput, FileStorage_free_file_after_exception) ...@@ -1674,4 +1674,33 @@ TEST(Core_InputOutput, FileStorage_free_file_after_exception)
ASSERT_EQ(0, std::remove(fileName.c_str())); ASSERT_EQ(0, std::remove(fileName.c_str()));
} }
TEST(Core_InputOutput, FileStorage_YAML_parse_multiple_documents)
{
const std::string filename = "FileStorage_YAML_parse_multiple_documents.yml";
FileStorage fs;
fs.open(filename, FileStorage::WRITE);
fs << "a" << 42;
fs.release();
fs.open(filename, FileStorage::APPEND);
fs << "b" << 1988;
fs.release();
fs.open(filename, FileStorage::READ);
EXPECT_EQ(42, (int)fs["a"]);
EXPECT_EQ(1988, (int)fs["b"]);
EXPECT_EQ(42, (int)fs.root(0)["a"]);
EXPECT_TRUE(fs.root(0)["b"].empty());
EXPECT_TRUE(fs.root(1)["a"].empty());
EXPECT_EQ(1988, (int)fs.root(1)["b"]);
fs.release();
ASSERT_EQ(0, std::remove(filename.c_str()));
}
}} // namespace }} // namespace
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment