]>
granicus.if.org Git - libexpat/log
Rhodri James [Wed, 26 Jul 2017 16:45:50 +0000 (17:45 +0100)]
Make test_nsalloc_long_uri() 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
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
Rhodri James [Tue, 25 Jul 2017 14:18:52 +0000 (15:18 +0100)]
Fix spelling of "namespace allocation tests"
Sebastian Pipping [Sat, 22 Jul 2017 21:34:06 +0000 (23:34 +0200)]
Merge branch 'coverage'
Sebastian Pipping [Sat, 22 Jul 2017 20:57:15 +0000 (22:57 +0200)]
runtests.c: Fix memleaks
Rhodri James [Tue, 20 Jun 2017 14:43:43 +0000 (15:43 +0100)]
Comment change: exclude error() role handler from coverage
Rhodri James [Tue, 20 Jun 2017 14:08:54 +0000 (15:08 +0100)]
Test NOTATION 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
Rhodri James [Tue, 20 Jun 2017 13:56:12 +0000 (14:56 +0100)]
Test parameter entity marked PUBLIC but with no ID
Rhodri James [Tue, 20 Jun 2017 13:53:09 +0000 (14:53 +0100)]
Test parameter entity with invalid keyword (not SYSTEM or PUBLIC)
Rhodri James [Tue, 20 Jun 2017 13:40:26 +0000 (14:40 +0100)]
Test Entity declaration marked PUBLIC with no ID
Rhodri James [Tue, 20 Jun 2017 13:29:29 +0000 (14:29 +0100)]
Test that Doctype with an extra 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
Rhodri James [Tue, 20 Jun 2017 13:20:38 +0000 (14:20 +0100)]
Test Doctype marked PUBLIC but with no ID is rejected
Rhodri James [Tue, 20 Jun 2017 13:15:38 +0000 (14:15 +0100)]
Test overly brief doctype is rejected
Rhodri James [Tue, 20 Jun 2017 12:48:40 +0000 (13:48 +0100)]
Comment change: exclude unreachable case in prolog1
Rhodri James [Mon, 19 Jun 2017 16:39:28 +0000 (17:39 +0100)]
Extend UTF-16 LE 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
Rhodri James [Mon, 19 Jun 2017 16:19:52 +0000 (17:19 +0100)]
Test that comments are picked up from UTF-16 little-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
Rhodri James [Mon, 19 Jun 2017 16:02:21 +0000 (17:02 +0100)]
Test public external parameter entity in UTF-16 little-endian
Rhodri James [Mon, 19 Jun 2017 16:00:58 +0000 (17:00 +0100)]
Test public external param entity in UTF-16 big-endian
Rhodri James [Mon, 19 Jun 2017 15:19:43 +0000 (16:19 +0100)]
Test ignore section in UTF-16 big-endian encoding
Rhodri James [Mon, 19 Jun 2017 15:10:04 +0000 (16:10 +0100)]
Test CDATA is passed correctly from little-endian UTF-16 input
Rhodri James [Mon, 19 Jun 2017 15:02:35 +0000 (16:02 +0100)]
Test entity substitution in attributes, UTF-16 little endian
Rhodri James [Mon, 19 Jun 2017 15:00:24 +0000 (16:00 +0100)]
Test entity substitution in attributes UTF-16 big-endian
Rhodri James [Mon, 19 Jun 2017 14:23:45 +0000 (15:23 +0100)]
Test PI in big-endian UTF-16
Rhodri James [Mon, 19 Jun 2017 14:09:22 +0000 (15:09 +0100)]
Comment change: exclude unreachable line from coverage figures
Rhodri James [Mon, 19 Jun 2017 13:42:03 +0000 (14:42 +0100)]
Comment change: exclude sameName from coverage
Rhodri James [Mon, 19 Jun 2017 13:19:59 +0000 (14:19 +0100)]
Test entities with similar names to predefined entity are rejected
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.
Rhodri James [Mon, 19 Jun 2017 11:26:29 +0000 (12:26 +0100)]
Test IGNORE rejection with an unknown encoding
Rhodri James [Fri, 16 Jun 2017 18:37:08 +0000 (19:37 +0100)]
Test IGNORE section with UTF-16 data
Rhodri James [Fri, 16 Jun 2017 18:09:17 +0000 (19:09 +0100)]
Comment 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
Rhodri James [Fri, 16 Jun 2017 17:24:49 +0000 (18:24 +0100)]
Test multi-byte characters in ATTLIST default attribute value
Rhodri James [Fri, 16 Jun 2017 17:00:46 +0000 (18:00 +0100)]
Fix error messages in test_bad_doctype_* tests
Rhodri James [Fri, 16 Jun 2017 16:51:05 +0000 (17:51 +0100)]
Test document name of "1?" is rejected in 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
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 '+'
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
Rhodri James [Fri, 16 Jun 2017 16:04:18 +0000 (17:04 +0100)]
Test invalid character in document local name is faulted
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
Rhodri James [Fri, 16 Jun 2017 15:04:48 +0000 (16:04 +0100)]
Test invalid UTF-16 characters in DOCTYPE
Rhodri James [Fri, 16 Jun 2017 14:23:48 +0000 (15:23 +0100)]
Test invalid characters in a DOCTYPE
Rhodri James [Fri, 16 Jun 2017 13:25:07 +0000 (14:25 +0100)]
Refactor: move element event handlers together
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.
Rhodri James [Fri, 16 Jun 2017 12:44:00 +0000 (13:44 +0100)]
Test attribute list with bad keyword starting with non-name character
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
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
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
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
Rhodri James [Thu, 15 Jun 2017 17:00:30 +0000 (18:00 +0100)]
Test that text after a / is faulted
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
Rhodri James [Thu, 15 Jun 2017 16:25:27 +0000 (17:25 +0100)]
Test invalid character in attribute value is faulted
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
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
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
Rhodri James [Thu, 15 Jun 2017 14:59:16 +0000 (15:59 +0100)]
Test attribute with high-byte-set UTF-16 character name
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
Rhodri James [Thu, 15 Jun 2017 12:27:37 +0000 (13:27 +0100)]
Test invalid character in a hex character reference
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
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.
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
Rhodri James [Wed, 14 Jun 2017 16:13:10 +0000 (17:13 +0100)]
Test PI in UTF-16 with non-ASCII target name
Rhodri James [Wed, 14 Jun 2017 11:48:32 +0000 (12:48 +0100)]
Test PI with target of "xmm"
Rhodri James [Wed, 14 Jun 2017 11:46:29 +0000 (12:46 +0100)]
Test PI with a target of "xnl"
Rhodri James [Wed, 14 Jun 2017 11:41:26 +0000 (12:41 +0100)]
Test PI with a target of "yml"
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.
Rhodri James [Tue, 13 Jun 2017 18:14:21 +0000 (19:14 +0100)]
Refactor test_pi_handled_in_default to use accumulate_characters()
Rhodri James [Mon, 12 Jun 2017 17:38:27 +0000 (18:38 +0100)]
Test unknown encoding handler in a parser with namespaces
Rhodri James [Mon, 12 Jun 2017 17:24:39 +0000 (18:24 +0100)]
Test unannounced UTF-16, no BOM, leading space to hide '<'
Rhodri James [Mon, 12 Jun 2017 17:06:50 +0000 (18:06 +0100)]
Test UTF-16 where UTF-8 is expected is rejected
Rhodri James [Mon, 12 Jun 2017 16:20:10 +0000 (17:20 +0100)]
Test UTF-16BE vs explicit UTF-16LE encoding
Rhodri James [Mon, 12 Jun 2017 16:03:36 +0000 (17:03 +0100)]
Test UTF-8 character nearly the BOM (for code path coverage)
Rhodri James [Mon, 12 Jun 2017 15:48:31 +0000 (16:48 +0100)]
Test UTF-16LE vs explicit UTF-16BE encoding
Rhodri James [Mon, 12 Jun 2017 14:57:01 +0000 (15:57 +0100)]
Test UTF-16 BE BOM vs explicit Latin-1 encoding parsing a full buffer
Rhodri James [Mon, 12 Jun 2017 14:52:21 +0000 (15:52 +0100)]
Test UTF-16 big-endian BOM vs explicit Latin-1 encoding
Rhodri James [Mon, 12 Jun 2017 14:34:13 +0000 (15:34 +0100)]
Test UTF-16 BOM vs explicit latin-1 encoding parsing a full buffer
Rhodri James [Mon, 12 Jun 2017 13:48:17 +0000 (14:48 +0100)]
Test UTF-16 BOM vs explicit latin-1 encoding
Rhodri James [Fri, 9 Jun 2017 17:34:18 +0000 (18:34 +0100)]
Test specifying a UTF-16 encoding when creating the parser works
Rhodri James [Fri, 9 Jun 2017 16:15:57 +0000 (17:15 +0100)]
Test unknown encoding with 17-bit top-bit-set character is rejected
Rhodri James [Fri, 9 Jun 2017 16:05:38 +0000 (17:05 +0100)]
Test top-bit-set character mimicking surrogate high is rejected
Rhodri James [Fri, 9 Jun 2017 15:35:57 +0000 (16:35 +0100)]
Test top-bit set character mimicking ASCII is rejected in encodings
Rhodri James [Fri, 9 Jun 2017 15:21:32 +0000 (16:21 +0100)]
Test unknown encoding with invalid multi-byte length field
Rhodri James [Fri, 9 Jun 2017 15:12:25 +0000 (16:12 +0100)]
More refactoring of unknown encoding handlers
Rhodri James [Fri, 9 Jun 2017 14:44:21 +0000 (15:44 +0100)]
Refactor to use encoding to switch UnknownEncoding handler behaviour
Rhodri James [Fri, 9 Jun 2017 14:23:38 +0000 (15:23 +0100)]
Test ASCII-like unknown encoding correctly rejects invalid characters
Rhodri James [Fri, 9 Jun 2017 14:16:25 +0000 (15:16 +0100)]
Check that ASCII-like encoding is valid
Rhodri James [Fri, 9 Jun 2017 12:14:43 +0000 (13:14 +0100)]
Test unknown encoding not compatible with ASCII is rejected
Rhodri James [Fri, 9 Jun 2017 11:43:41 +0000 (12:43 +0100)]
Test unknown encoding conversion buffer overflow not on convert()
Rhodri James [Fri, 9 Jun 2017 11:32:32 +0000 (12:32 +0100)]
Test unknown encoding conversion buffer overflow on convert()
Rhodri James [Thu, 8 Jun 2017 18:56:47 +0000 (19:56 +0100)]
Test bad non-start of name in unknown encoding
Rhodri James [Thu, 8 Jun 2017 18:48:43 +0000 (19:48 +0100)]
Test bad start of name with an unknown encoding
Rhodri James [Thu, 8 Jun 2017 18:20:56 +0000 (19:20 +0100)]
Test converted start of name with unknown encoding
Rhodri James [Thu, 8 Jun 2017 18:13:06 +0000 (19:13 +0100)]
Comment change: exclude more unreachable code from coverage
Rhodri James [Thu, 8 Jun 2017 18:02:54 +0000 (19:02 +0100)]
Test a valid (if odd) encoding
Rhodri James [Thu, 8 Jun 2017 16:02:21 +0000 (17:02 +0100)]
Comment change: exclude unreachable condition from coverage
Rhodri James [Tue, 6 Jun 2017 18:20:33 +0000 (19:20 +0100)]
Refactor to get rid of data/code pointer conversion warning