]> granicus.if.org Git - libexpat/log
libexpat
7 years agoMake test_alloc_parse_comment_2() robust vs allocation pattern changes
Rhodri James [Thu, 27 Jul 2017 11:18:47 +0000 (12:18 +0100)]
Make test_alloc_parse_comment_2() robust vs allocation pattern changes

7 years agoMake test_alloc_parse_comment() robust vs allocation pattern changes
Rhodri James [Thu, 27 Jul 2017 11:17:15 +0000 (12:17 +0100)]
Make test_alloc_parse_comment() robust vs allocation pattern changes

7 years agoMake test_alloc_parse_pi_3 robust vs allocation pattern changes
Rhodri James [Thu, 27 Jul 2017 11:14:22 +0000 (12:14 +0100)]
Make test_alloc_parse_pi_3 robust vs allocation pattern changes

7 years agoMake test_alloc_parse_pi_2() robust vs allocation pattern changes
Rhodri James [Thu, 27 Jul 2017 11:10:00 +0000 (12:10 +0100)]
Make test_alloc_parse_pi_2() robust vs allocation pattern changes

7 years agoMake test_alloc_parse_pi() robust vs allocation pattern changes
Rhodri James [Thu, 27 Jul 2017 11:05:58 +0000 (12:05 +0100)]
Make test_alloc_parse_pi() robust vs allocation pattern changes

7 years agoRemove memory leak in external_entity_optioner()
Rhodri James [Thu, 27 Jul 2017 10:50:15 +0000 (11:50 +0100)]
Remove memory leak in external_entity_optioner()

7 years agoMake test_alloc_parse_xdecl_2() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 17:41:22 +0000 (18:41 +0100)]
Make test_alloc_parse_xdecl_2() robust vs allocation pattern changes

7 years agoMake test_alloc_parse_xdecl() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 17:29:06 +0000 (18:29 +0100)]
Make test_alloc_parse_xdecl() robust vs allocation pattern changes

7 years agoMake test_nsalloc_prefixed_element() robust vs allocation changes
Rhodri James [Wed, 26 Jul 2017 17:20:58 +0000 (18:20 +0100)]
Make test_nsalloc_prefixed_element() robust vs allocation changes

7 years agoMake test_nsalloc_long_systemid_in_ext() robust
Rhodri James [Wed, 26 Jul 2017 17:18:46 +0000 (18:18 +0100)]
Make test_nsalloc_long_systemid_in_ext() robust

Makes test more predictable in the face of changing memory
allocation patterns in the library.

7 years agoMake test_nsalloc_long_default_in_ext() robust.
Rhodri James [Wed, 26 Jul 2017 17:17:02 +0000 (18:17 +0100)]
Make test_nsalloc_long_default_in_ext() robust.

Makes test more predictable in the face of changes to the memory
allocation patterns in the library.

7 years agoMake test_nsalloc_realloc_long_context_in_dtd() robust.
Rhodri James [Wed, 26 Jul 2017 17:14:46 +0000 (18:14 +0100)]
Make test_nsalloc_realloc_long_context_in_dtd() robust.

Makes test more predictable in the face of changes in the pattern
of memory allocations inside the library.

7 years agoMake test_nsalloc_realloc_long_ge_name() robust.
Rhodri James [Wed, 26 Jul 2017 17:13:06 +0000 (18:13 +0100)]
Make test_nsalloc_realloc_long_ge_name() robust.

Make test robust against memory allocation pattern changes

7 years agoMake context reallocation tests robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 17:11:28 +0000 (18:11 +0100)]
Make context reallocation tests robust vs allocation pattern changes

7 years agoMake test_nsalloc_long_context() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 17:10:16 +0000 (18:10 +0100)]
Make test_nsalloc_long_context() robust vs allocation pattern changes

7 years agoMake test_nsalloc_less_long_namespace() robust vs allocation changes
Rhodri James [Wed, 26 Jul 2017 17:08:40 +0000 (18:08 +0100)]
Make test_nsalloc_less_long_namespace() robust vs allocation changes

7 years agoMake test_nsalloc_long_namespace() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 17:06:46 +0000 (18:06 +0100)]
Make test_nsalloc_long_namespace() robust vs allocation pattern changes

7 years agoMake test_nsalloc_realloc_longer_prefix_count() robust.
Rhodri James [Wed, 26 Jul 2017 17:01:53 +0000 (18:01 +0100)]
Make test_nsalloc_realloc_longer_prefix_count() robust.

Remove test's vulnerability to changing memory allocation patterns

7 years agoMake test_nsalloc_realloc_long_prefix() robust vs allocation changes
Rhodri James [Wed, 26 Jul 2017 17:00:40 +0000 (18:00 +0100)]
Make test_nsalloc_realloc_long_prefix() robust vs allocation changes

7 years agoMake test_nsalloc_long_element() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 16:56:51 +0000 (17:56 +0100)]
Make test_nsalloc_long_element() robust vs allocation pattern changes

7 years agoMake test_nsalloc_realloc_attributes() robust vs allocation changes
Rhodri James [Wed, 26 Jul 2017 16:55:15 +0000 (17:55 +0100)]
Make test_nsalloc_realloc_attributes() robust vs allocation changes

7 years agoMake test_nsalloc_long_attr_prefix() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 16:49:21 +0000 (17:49 +0100)]
Make test_nsalloc_long_attr_prefix() robust vs allocation pattern changes

7 years agoMake test_nsalloc_long_attr() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 16:47:48 +0000 (17:47 +0100)]
Make test_nsalloc_long_attr() robust vs allocation pattern changes

7 years agoMake test_nsalloc_long_uri() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 16:45:50 +0000 (17:45 +0100)]
Make test_nsalloc_long_uri() robust vs allocation pattern changes

7 years agoMake test_nsalloc_long_prefix() robust vs allocation pattern changes
Rhodri James [Wed, 26 Jul 2017 16:42:03 +0000 (17:42 +0100)]
Make test_nsalloc_long_prefix() robust vs allocation pattern changes

7 years agoMake test_nsalloc_xmlns() robust vs changes in allocation patterns.
Rhodri James [Wed, 26 Jul 2017 16:33:10 +0000 (17:33 +0100)]
Make test_nsalloc_xmlns() robust vs changes in allocation patterns.

Most of the allocation tests use some complicated logic to ensure
that cached memory allocations do not cause the test to miss out
some possible allocation failure paths.  A more robust way to do
that is to free and recreate the parser, avoiding caching
altogether.  This should be done with the test case section
teardown and setup routines, so that the right sort of parser is
created.  This is the first in a series of commits to switch over
to this test structure

7 years agoFix spelling of "namespace allocation tests"
Rhodri James [Tue, 25 Jul 2017 14:18:52 +0000 (15:18 +0100)]
Fix spelling of "namespace allocation tests"

7 years agoMerge branch 'coverage'
Sebastian Pipping [Sat, 22 Jul 2017 21:34:06 +0000 (23:34 +0200)]
Merge branch 'coverage'

7 years agoruntests.c: Fix memleaks
Sebastian Pipping [Sat, 22 Jul 2017 20:57:15 +0000 (22:57 +0200)]
runtests.c: Fix memleaks

7 years agoComment change: exclude error() role handler from coverage
Rhodri James [Tue, 20 Jun 2017 14:43:43 +0000 (15:43 +0100)]
Comment change: exclude error() role handler from coverage

7 years agoTest NOTATION marked SYSTEM but with no ID
Rhodri James [Tue, 20 Jun 2017 14:08:54 +0000 (15:08 +0100)]
Test NOTATION marked SYSTEM but with no ID

7 years agoTest parameter entity marked SYSTEM but with no ID
Rhodri James [Tue, 20 Jun 2017 13:58:42 +0000 (14:58 +0100)]
Test parameter entity marked SYSTEM but with no ID

7 years agoTest parameter entity marked PUBLIC but with no ID
Rhodri James [Tue, 20 Jun 2017 13:56:12 +0000 (14:56 +0100)]
Test parameter entity marked PUBLIC but with no ID

7 years agoTest parameter entity with invalid keyword (not SYSTEM or PUBLIC)
Rhodri James [Tue, 20 Jun 2017 13:53:09 +0000 (14:53 +0100)]
Test parameter entity with invalid keyword (not SYSTEM or PUBLIC)

7 years agoTest Entity declaration marked PUBLIC with no ID
Rhodri James [Tue, 20 Jun 2017 13:40:26 +0000 (14:40 +0100)]
Test Entity declaration marked PUBLIC with no ID

7 years agoTest that Doctype with an extra ID is rejected
Rhodri James [Tue, 20 Jun 2017 13:29:29 +0000 (14:29 +0100)]
Test that Doctype with an extra ID is rejected

7 years agoTest Doctype marked SYSTEM but with no ID is rejected
Rhodri James [Tue, 20 Jun 2017 13:23:08 +0000 (14:23 +0100)]
Test Doctype marked SYSTEM but with no ID is rejected

7 years agoTest Doctype marked PUBLIC but with no ID is rejected
Rhodri James [Tue, 20 Jun 2017 13:20:38 +0000 (14:20 +0100)]
Test Doctype marked PUBLIC but with no ID is rejected

7 years agoTest overly brief doctype is rejected
Rhodri James [Tue, 20 Jun 2017 13:15:38 +0000 (14:15 +0100)]
Test overly brief doctype is rejected

7 years agoComment change: exclude unreachable case in prolog1
Rhodri James [Tue, 20 Jun 2017 12:48:40 +0000 (13:48 +0100)]
Comment change: exclude unreachable case in prolog1

7 years agoExtend UTF-16 LE entity test to hex entities
Rhodri James [Mon, 19 Jun 2017 16:39:28 +0000 (17:39 +0100)]
Extend UTF-16 LE entity test to hex entities

7 years agoExtend UTF-16 BE entity test to hex entities
Rhodri James [Mon, 19 Jun 2017 16:37:20 +0000 (17:37 +0100)]
Extend UTF-16 BE entity test to hex entities

7 years agoTest that comments are picked up from UTF-16 little-endian
Rhodri James [Mon, 19 Jun 2017 16:19:52 +0000 (17:19 +0100)]
Test that comments are picked up from UTF-16 little-endian

7 years agoTest that comments are picked up from UTF-16 big-endian
Rhodri James [Mon, 19 Jun 2017 16:18:02 +0000 (17:18 +0100)]
Test that comments are picked up from UTF-16 big-endian

7 years agoTest public external parameter entity in UTF-16 little-endian
Rhodri James [Mon, 19 Jun 2017 16:02:21 +0000 (17:02 +0100)]
Test public external parameter entity in UTF-16 little-endian

7 years agoTest public external param entity in UTF-16 big-endian
Rhodri James [Mon, 19 Jun 2017 16:00:58 +0000 (17:00 +0100)]
Test public external param entity in UTF-16 big-endian

7 years agoTest ignore section in UTF-16 big-endian encoding
Rhodri James [Mon, 19 Jun 2017 15:19:43 +0000 (16:19 +0100)]
Test ignore section in UTF-16 big-endian encoding

7 years agoTest CDATA is passed correctly from little-endian UTF-16 input
Rhodri James [Mon, 19 Jun 2017 15:10:04 +0000 (16:10 +0100)]
Test CDATA is passed correctly from little-endian UTF-16 input

7 years agoTest entity substitution in attributes, UTF-16 little endian
Rhodri James [Mon, 19 Jun 2017 15:02:35 +0000 (16:02 +0100)]
Test entity substitution in attributes, UTF-16 little endian

7 years agoTest entity substitution in attributes UTF-16 big-endian
Rhodri James [Mon, 19 Jun 2017 15:00:24 +0000 (16:00 +0100)]
Test entity substitution in attributes UTF-16 big-endian

7 years agoTest PI in big-endian UTF-16
Rhodri James [Mon, 19 Jun 2017 14:23:45 +0000 (15:23 +0100)]
Test PI in big-endian UTF-16

7 years agoComment change: exclude unreachable line from coverage figures
Rhodri James [Mon, 19 Jun 2017 14:09:22 +0000 (15:09 +0100)]
Comment change: exclude unreachable line from coverage figures

7 years agoComment change: exclude sameName from coverage
Rhodri James [Mon, 19 Jun 2017 13:42:03 +0000 (14:42 +0100)]
Comment change: exclude sameName from coverage

7 years agoTest entities with similar names to predefined entity are rejected
Rhodri James [Mon, 19 Jun 2017 13:19:59 +0000 (14:19 +0100)]
Test entities with similar names to predefined entity are rejected

7 years agoTest invalid character reference with a decimal value
Rhodri James [Mon, 19 Jun 2017 12:56:04 +0000 (13:56 +0100)]
Test invalid character reference with a decimal value

Previous limit test used hexed, which has a difference parse path.

7 years agoTest IGNORE rejection with an unknown encoding
Rhodri James [Mon, 19 Jun 2017 11:26:29 +0000 (12:26 +0100)]
Test IGNORE rejection with an unknown encoding

7 years agoTest IGNORE section with UTF-16 data
Rhodri James [Fri, 16 Jun 2017 18:37:08 +0000 (19:37 +0100)]
Test IGNORE section with UTF-16 data

7 years agoComment change: exclude paranoia check from coverage
Rhodri James [Fri, 16 Jun 2017 18:09:17 +0000 (19:09 +0100)]
Comment change: exclude paranoia check from coverage

7 years agoComment change: exclude paranoia check from coverage
Rhodri James [Fri, 16 Jun 2017 17:55:18 +0000 (18:55 +0100)]
Comment change: exclude paranoia check from coverage

7 years agoTest multi-byte characters in ATTLIST default attribute value
Rhodri James [Fri, 16 Jun 2017 17:24:49 +0000 (18:24 +0100)]
Test multi-byte characters in ATTLIST default attribute value

7 years agoFix error messages in test_bad_doctype_* tests
Rhodri James [Fri, 16 Jun 2017 17:00:46 +0000 (18:00 +0100)]
Fix error messages in test_bad_doctype_* tests

7 years agoTest document name of "1?" is rejected in doctype declaration
Rhodri James [Fri, 16 Jun 2017 16:51:05 +0000 (17:51 +0100)]
Test document name of "1?" is rejected in doctype declaration

7 years agoTest document name of "1*" is rejected in a doctype declaration
Rhodri James [Fri, 16 Jun 2017 16:46:08 +0000 (17:46 +0100)]
Test document name of "1*" is rejected in a doctype declaration

7 years agoTest document name of "1+" is rejected in doctype
Rhodri James [Fri, 16 Jun 2017 16:34:18 +0000 (17:34 +0100)]
Test document name of "1+" is rejected in doctype

Following a codepath that requires a character valid in a name but
not at the start (or '-' or ':') followed by a '+'

7 years agoTest two colons in the document name in a doctype is rejected
Rhodri James [Fri, 16 Jun 2017 16:19:31 +0000 (17:19 +0100)]
Test two colons in the document name in a doctype is rejected

7 years agoTest invalid character in document local name is faulted
Rhodri James [Fri, 16 Jun 2017 16:04:18 +0000 (17:04 +0100)]
Test invalid character in document local name is faulted

7 years agoTest UTF-16 non-zero high byte characters in document local name
Rhodri James [Fri, 16 Jun 2017 15:57:23 +0000 (16:57 +0100)]
Test UTF-16 non-zero high byte characters in document local name

Tests DOCTYPE handling of non-ASCII characters leading the local
element (i.e. the part after the colon) of a document name

7 years agoTest invalid UTF-16 characters in DOCTYPE
Rhodri James [Fri, 16 Jun 2017 15:04:48 +0000 (16:04 +0100)]
Test invalid UTF-16 characters in DOCTYPE

7 years agoTest invalid characters in a DOCTYPE
Rhodri James [Fri, 16 Jun 2017 14:23:48 +0000 (15:23 +0100)]
Test invalid characters in a DOCTYPE

7 years agoRefactor: move element event handlers together
Rhodri James [Fri, 16 Jun 2017 13:25:07 +0000 (14:25 +0100)]
Refactor: move element event handlers together

7 years agoTest UTF-16 attribute description keyword with non-zero high bytes.
Rhodri James [Fri, 16 Jun 2017 13:03:08 +0000 (14:03 +0100)]
Test UTF-16 attribute description keyword with non-zero high bytes.

The #keyword consists of valid name-worthy characters, so is
rejected as a syntax error not an invalid token.

7 years agoTest attribute list with bad keyword starting with non-name character
Rhodri James [Fri, 16 Jun 2017 12:44:00 +0000 (13:44 +0100)]
Test attribute list with bad keyword starting with non-name character

7 years agoTest parameter entity with UTF-16 name with top bytes non-zero
Rhodri James [Fri, 16 Jun 2017 12:21:28 +0000 (13:21 +0100)]
Test parameter entity with UTF-16 name with top bytes non-zero

7 years agoTest that UTF-16 element local names with non-zero top byte are accepted
Rhodri James [Thu, 15 Jun 2017 18:19:23 +0000 (19:19 +0100)]
Test that UTF-16 element local names with non-zero top byte are accepted

7 years agoTest that non-name characters after a colon in an element are rejected
Rhodri James [Thu, 15 Jun 2017 17:21:39 +0000 (18:21 +0100)]
Test that non-name characters after a colon in an element are rejected

7 years agoTest that more than one colon in an element name is rejected
Rhodri James [Thu, 15 Jun 2017 17:15:51 +0000 (18:15 +0100)]
Test that more than one colon in an element name is rejected

7 years agoTest that text after a / is faulted
Rhodri James [Thu, 15 Jun 2017 17:00:30 +0000 (18:00 +0100)]
Test that text after a / is faulted

7 years agoTest second attribute with UTF-16 top byte non-zero is valid
Rhodri James [Thu, 15 Jun 2017 16:52:08 +0000 (17:52 +0100)]
Test second attribute with UTF-16 top byte non-zero is valid

This exercises a different code path to the first attribute

7 years agoTest invalid character in attribute value is faulted
Rhodri James [Thu, 15 Jun 2017 16:25:27 +0000 (17:25 +0100)]
Test invalid character in attribute value is faulted

7 years agoTest UTF-16 attribute names with non-zero top byte are accepted
Rhodri James [Thu, 15 Jun 2017 15:50:42 +0000 (16:50 +0100)]
Test UTF-16 attribute names with non-zero top byte are accepted

7 years agoTest that non-name characters after a colon are rejected
Rhodri James [Thu, 15 Jun 2017 15:35:14 +0000 (16:35 +0100)]
Test that non-name characters after a colon are rejected

I.e. test that leafnames have to be valid names

7 years agoTest more than one colon in an attribute name is rejected
Rhodri James [Thu, 15 Jun 2017 15:18:53 +0000 (16:18 +0100)]
Test more than one colon in an attribute name is rejected

I.e. test that namespaces don't nest

7 years agoTest attribute with high-byte-set UTF-16 character name
Rhodri James [Thu, 15 Jun 2017 14:59:16 +0000 (15:59 +0100)]
Test attribute with high-byte-set UTF-16 character name

7 years agoTest non-ASCII characters in entity names
Rhodri James [Thu, 15 Jun 2017 13:06:25 +0000 (14:06 +0100)]
Test non-ASCII characters in entity names

Use UTF-16 character with value > 0x00ff for extra code coverage

7 years agoTest invalid character in a hex character reference
Rhodri James [Thu, 15 Jun 2017 12:27:37 +0000 (13:27 +0100)]
Test invalid character in a hex character reference

7 years agoTest trailing spaces in element names are ignored in start and end tags
Rhodri James [Thu, 15 Jun 2017 12:18:50 +0000 (13:18 +0100)]
Test trailing spaces in element names are ignored in start and end tags

7 years agoTest single stray ] doesn't close a CDATA section
Rhodri James [Wed, 14 Jun 2017 18:20:29 +0000 (19:20 +0100)]
Test single stray ] doesn't close a CDATA section

Also uses multi-byte characters around the ] to exercise more code.

7 years agoTest that UTF-8 safely passes through a CDATA section.
Rhodri James [Wed, 14 Jun 2017 17:35:02 +0000 (18:35 +0100)]
Test that UTF-8 safely passes through a CDATA section.

Specifically test that multi-byte characters are correctly tokenised

7 years agoTest PI in UTF-16 with non-ASCII target name
Rhodri James [Wed, 14 Jun 2017 16:13:10 +0000 (17:13 +0100)]
Test PI in UTF-16 with non-ASCII target name

7 years agoTest PI with target of "xmm"
Rhodri James [Wed, 14 Jun 2017 11:48:32 +0000 (12:48 +0100)]
Test PI with target of "xmm"

7 years agoTest PI with a target of "xnl"
Rhodri James [Wed, 14 Jun 2017 11:46:29 +0000 (12:46 +0100)]
Test PI with a target of "xnl"

7 years agoTest PI with a target of "yml"
Rhodri James [Wed, 14 Jun 2017 11:41:26 +0000 (12:41 +0100)]
Test PI with a target of "yml"

7 years agoRefactor test_comment_handled_in_default()
Rhodri James [Tue, 13 Jun 2017 18:17:14 +0000 (19:17 +0100)]
Refactor test_comment_handled_in_default()

Eliminates an unnecessary handler when we can use
accumulate_characters instead.

7 years agoRefactor test_pi_handled_in_default to use accumulate_characters()
Rhodri James [Tue, 13 Jun 2017 18:14:21 +0000 (19:14 +0100)]
Refactor test_pi_handled_in_default to use accumulate_characters()

7 years agoTest unknown encoding handler in a parser with namespaces
Rhodri James [Mon, 12 Jun 2017 17:38:27 +0000 (18:38 +0100)]
Test unknown encoding handler in a parser with namespaces

7 years agoTest unannounced UTF-16, no BOM, leading space to hide '<'
Rhodri James [Mon, 12 Jun 2017 17:24:39 +0000 (18:24 +0100)]
Test unannounced UTF-16, no BOM, leading space to hide '<'

7 years agoTest UTF-16 where UTF-8 is expected is rejected
Rhodri James [Mon, 12 Jun 2017 17:06:50 +0000 (18:06 +0100)]
Test UTF-16 where UTF-8 is expected is rejected

7 years agoTest UTF-16BE vs explicit UTF-16LE encoding
Rhodri James [Mon, 12 Jun 2017 16:20:10 +0000 (17:20 +0100)]
Test UTF-16BE vs explicit UTF-16LE encoding

7 years agoTest UTF-8 character nearly the BOM (for code path coverage)
Rhodri James [Mon, 12 Jun 2017 16:03:36 +0000 (17:03 +0100)]
Test UTF-8 character nearly the BOM (for code path coverage)

7 years agoTest UTF-16LE vs explicit UTF-16BE encoding
Rhodri James [Mon, 12 Jun 2017 15:48:31 +0000 (16:48 +0100)]
Test UTF-16LE vs explicit UTF-16BE encoding