diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/main.cpp | 7 | ||||
-rw-r--r-- | tests/test_document.cpp | 4 |
2 files changed, 11 insertions, 0 deletions
diff --git a/tests/main.cpp b/tests/main.cpp index eb47401..f283dcf 100644 --- a/tests/main.cpp +++ b/tests/main.cpp @@ -12,6 +12,13 @@ jmp_buf test_runner::_failure; static size_t g_memory_total_size = 0;
+#ifdef __linux
+size_t _msize(void* ptr)
+{
+ return malloc_usable_size(ptr);
+}
+#endif
+
static void* custom_allocate(size_t size)
{
if (test_runner::_memory_fail_threshold > 0 && test_runner::_memory_fail_threshold < size)
diff --git a/tests/test_document.cpp b/tests/test_document.cpp index b9095cf..2ea0f84 100644 --- a/tests/test_document.cpp +++ b/tests/test_document.cpp @@ -84,11 +84,15 @@ TEST(document_load_file_error) CHECK(doc.load_file("filedoesnotexist").status == status_file_not_found);
+#ifdef __linux
+ CHECK(doc.load_file("/dev/null").status == status_io_error);
+#else
#ifndef __DMC__ // Digital Mars CRT does not like 'con' pseudo-file
CHECK(doc.load_file("con").status == status_io_error);
#endif
CHECK(doc.load_file("nul").status == status_io_error);
+#endif
test_runner::_memory_fail_threshold = 1;
CHECK(doc.load_file("tests/data/small.xml").status == status_out_of_memory);
|