diff --git a/tests/test_document.cpp b/tests/test_document.cpp
index bb5ed6371ee50c746fc91deac564691f0c5aa4bc..b702a07742e7ae03bb47c1eda5c0221fb9d04a41 100644
--- a/tests/test_document.cpp
+++ b/tests/test_document.cpp
@@ -109,12 +109,26 @@ TEST(document_load_stream_error)
 
 	std::ifstream fs("filedoesnotexist");
 	CHECK(doc.load(fs).status == status_io_error);
+}
+
+TEST(document_load_stream_out_of_memory)
+{
+	pugi::xml_document doc;
 
 	std::istringstream iss("<node/>");
 	test_runner::_memory_fail_threshold = 1;
 	CHECK_ALLOC_FAIL(CHECK(doc.load(iss).status == status_out_of_memory));
 }
 
+TEST(document_load_stream_wide_out_of_memory)
+{
+	pugi::xml_document doc;
+
+	std::basic_istringstream<wchar_t> iss(L"<node/>");
+	test_runner::_memory_fail_threshold = 1;
+	CHECK_ALLOC_FAIL(CHECK(doc.load(iss).status == status_out_of_memory));
+}
+
 TEST(document_load_stream_empty)
 {
 	std::istringstream iss;