diff options
author | Arseny Kapoulkine <arseny.kapoulkine@gmail.com> | 2015-04-12 03:05:58 -0700 |
---|---|---|
committer | Arseny Kapoulkine <arseny.kapoulkine@gmail.com> | 2015-04-12 03:05:58 -0700 |
commit | a19da1c246f244da57197915df3ab70f24bf1502 (patch) | |
tree | 08522294870adb468c37042365095ebbae2c0177 /tests/test_xpath_parse.cpp | |
parent | e90d2ac8ba44fbcf4d5702643f708f2c86bde42e (diff) | |
parent | a0d065cd22d1d43c417f6d3db88a04bf57b67ed0 (diff) |
Merge branch 'master' into compact
Diffstat (limited to 'tests/test_xpath_parse.cpp')
-rw-r--r-- | tests/test_xpath_parse.cpp | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/tests/test_xpath_parse.cpp b/tests/test_xpath_parse.cpp index 2c2af5a..b6de42e 100644 --- a/tests/test_xpath_parse.cpp +++ b/tests/test_xpath_parse.cpp @@ -272,44 +272,25 @@ TEST_XML(xpath_parse_absolute, "<div><s/></div>") CHECK_XPATH_NODESET(doc, STR("/*[/]")) % 2; } -#ifdef PUGIXML_NO_EXCEPTIONS -# define CHECK_XPATH_FAIL_OOM(query) CHECK_XPATH_FAIL(query) -#else -static void test_xpath_fail_oom(const char_t* query) -{ - try - { - pugi::xpath_query q(query); - - CHECK_FORCE_FAIL("Expected out of memory exception"); - } - catch (const std::bad_alloc&) - { - } -} - -# define CHECK_XPATH_FAIL_OOM(query) test_xpath_fail_oom(query) -#endif - TEST(xpath_parse_out_of_memory_first_page) { test_runner::_memory_fail_threshold = 1; - CHECK_XPATH_FAIL_OOM(STR("1")); + CHECK_ALLOC_FAIL(CHECK_XPATH_FAIL(STR("1"))); } TEST(xpath_parse_out_of_memory_second_page_node) { test_runner::_memory_fail_threshold = 8192; - CHECK_XPATH_FAIL_OOM(STR("1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1")); + CHECK_ALLOC_FAIL(CHECK_XPATH_FAIL(STR("1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1"))); } TEST(xpath_parse_out_of_memory_string_to_number) { test_runner::_memory_fail_threshold = 4096 + 128; - CHECK_XPATH_FAIL_OOM(STR("0.11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111")); + CHECK_ALLOC_FAIL(CHECK_XPATH_FAIL(STR("0.11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111"))); } TEST(xpath_parse_qname_error) |