From b0fc587a7fbeb902bb0760dba73ee621105a86bc Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine <arseny.kapoulkine@gmail.com> Date: Fri, 20 Oct 2017 21:53:42 -0700 Subject: [PATCH] tests: Add more move tests We now check that appending a child to a moved document performs no allocations - this is already the case, but if we neglected to copy the allocator state this test would fail. --- tests/test_document.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/test_document.cpp b/tests/test_document.cpp index 4205949f..e6b9081e 100644 --- a/tests/test_document.cpp +++ b/tests/test_document.cpp @@ -1739,4 +1739,15 @@ TEST_XML(document_move_buffer, "<node1/><node2/>") CHECK(other.child(STR("node2")).offset_debug() == 9); } + +TEST_XML(document_move_append_child_zero_alloc, "<node1/><node2/>") +{ + test_runner::_memory_fail_threshold = 1; + + xml_document other = std::move(doc); + + CHECK(other.append_child(STR("node3"))); + + CHECK_NODE(other, STR("<node1/><node2/><node3/>")); +} #endif -- GitLab