summaryrefslogtreecommitdiff
path: root/tests/test_memory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_memory.cpp')
-rw-r--r--tests/test_memory.cpp41
1 files changed, 15 insertions, 26 deletions
diff --git a/tests/test_memory.cpp b/tests/test_memory.cpp
index 8f2d41b..8706ed2 100644
--- a/tests/test_memory.cpp
+++ b/tests/test_memory.cpp
@@ -29,38 +29,27 @@ TEST(custom_memory_management)
// replace functions
set_memory_management_functions(allocate, deallocate);
- try
{
- {
- // parse document
- xml_document doc;
- CHECK(doc.load("<node/>"));
+ // parse document
+ xml_document doc;
+ CHECK(doc.load("<node/>"));
- CHECK(allocate_count == 1);
- CHECK(deallocate_count == 0);
- CHECK_STRING(buffer, "<node\0>");
+ CHECK(allocate_count == 1);
+ CHECK(deallocate_count == 0);
+ CHECK_STRING(buffer, "<node\0>");
- // modify document
- doc.child("node").set_name("foobars");
-
- CHECK(allocate_count == 2);
- CHECK(deallocate_count == 0);
- CHECK_STRING(buffer, "foobars");
- }
+ // modify document
+ doc.child("node").set_name("foobars");
CHECK(allocate_count == 2);
- CHECK(deallocate_count == 2);
+ CHECK(deallocate_count == 0);
CHECK_STRING(buffer, "foobars");
-
- // restore old functions
- set_memory_management_functions(old_allocate, old_deallocate);
}
- catch (const char* error)
- {
- // restore old functions
- set_memory_management_functions(old_allocate, old_deallocate);
- // rethrow
- throw error;
- }
+ CHECK(allocate_count == 2);
+ CHECK(deallocate_count == 2);
+ CHECK_STRING(buffer, "foobars");
+
+ // restore old functions
+ set_memory_management_functions(old_allocate, old_deallocate);
}