]> granicus.if.org Git - libexpat/commitdiff
Extend notation allocation test with notation declaration handler
authorRhodri James <rhodri@kynesim.co.uk>
Fri, 10 Mar 2017 16:34:35 +0000 (16:34 +0000)
committerSebastian Pipping <sebastian@pipping.org>
Sat, 22 Jul 2017 19:46:16 +0000 (21:46 +0200)
This extends the code coverage a little, in particular checking
another allocation failure path.

expat/tests/runtests.c

index ce5330eeea01cf527765fd60215e22aaf9c4d1ee..0f2f4e39ea372878c5b801578cb5ca8ea7917f08 100644 (file)
@@ -6321,12 +6321,13 @@ START_TEST(test_alloc_notation)
 
     for (i = 0; i < MAX_ALLOC_COUNT; i++) {
         /* Repeat some counts to allow for cached allocations */
-        if ((i == 2 && repeat < 3) || (i == 3)) {
+        if ((i == 2 && repeat < 4) || (i == 3)) {
             i--;
             repeat++;
         }
         allocation_count = i;
         dummy_handler_flags = 0;
+        XML_SetNotationDeclHandler(parser, dummy_notation_decl_handler);
         XML_SetEntityDeclHandler(parser, dummy_entity_decl_handler);
         if (_XML_Parse_SINGLE_BYTES(parser, text, strlen(text),
                                     XML_TRUE) != XML_STATUS_ERROR)
@@ -6337,7 +6338,8 @@ START_TEST(test_alloc_notation)
         fail("Parse succeeded despite allocation failures");
     if (i == MAX_ALLOC_COUNT)
         fail("Parse failed at maximum allocation count");
-    if (dummy_handler_flags != DUMMY_ENTITY_DECL_HANDLER_FLAG)
+    if (dummy_handler_flags != (DUMMY_ENTITY_DECL_HANDLER_FLAG |
+                                DUMMY_NOTATION_DECL_HANDLER_FLAG))
         fail("Entity declaration handler not called");
 }
 #undef MAX_ALLOC_COUNT