PureXML/Tests
Mihaela Mihaljevic b98c2ff41f feat(emitting): CJK output encodings, closing output-encoding parity
Extend ByteEncoder to the multi-byte CJK encodings (Shift-JIS, EUC-JP,
EUC-KR, GBK, GB18030, Big5). Each inverse is built by running the existing,
tested whole-buffer decoder over every valid byte sequence and recording
the shortest sequence per scalar, so the encoder is by construction the
exact inverse of the decoder, with no new data or separate encode tables.
GB18030's astral range uses the four-byte pointer formula, so every scalar
encodes. Round-trip tests cover Japanese, Korean, Chinese, and a GB18030
astral character.

Closes #106
2026-06-09 09:41:28 +02:00
..
Fixtures
CanonicalPrefixRewriteTests.swift feat(canonical): C14N 2.0 sequential prefix rewrite, QName-aware values, node-set selection (#85) 2026-06-09 04:06:02 +02:00
CanonicalSelectionTests.swift feat(canonical): C14N 2.0 sequential prefix rewrite, QName-aware values, node-set selection (#85) 2026-06-09 04:06:02 +02:00
CanonicalSubsetTests.swift feat(canonical): node-subset C14N with ancestor namespace and xml:* inheritance (#85) 2026-06-09 03:55:54 +02:00
CanonicalTests.swift
CatalogBaseURITests.swift feat(catalog): xml:base and RFC 3986 relative-URI resolution of entry URIs 2026-06-08 16:19:45 +02:00
CatalogGroupPreferTests.swift feat(catalog): honor group-level prefer override 2026-06-08 18:05:03 +02:00
CatalogSGMLTests.swift feat(catalog): SGML Open (TR 9401) catalog format 2026-06-08 17:03:06 +02:00
CatalogSuffixPreferTests.swift feat(catalog): systemSuffix/uriSuffix entries and the prefer attribute 2026-06-08 15:31:10 +02:00
CatalogTests.swift
DTDAttributeTests.swift
DTDConditionalNotationTests.swift
DTDDefaultingTests.swift
DTDIdentifierTests.swift
DTDLocatedContentTests.swift feat(dtd): located content-model errors with recovery hints 2026-06-09 00:59:25 +02:00
DTDTests.swift
DTDValidationTests.swift
EncodingTests.swift feat(parsing): Big5 (Traditional Chinese / HKSCS) 2026-06-09 08:30:57 +02:00
EntityResolverTests.swift
HTMLAdoptionTests.swift feat(html): adoption agency algorithm and active formatting elements (#83) 2026-06-09 05:46:12 +02:00
HTMLDocumentTests.swift fix(html): keep template content nested instead of splitting to body (#83) 2026-06-09 06:21:10 +02:00
HTMLForeignContentTests.swift feat(html): SVG HTML integration points switch back to HTML namespace (#83) 2026-06-09 06:06:54 +02:00
HTMLFramesetTests.swift feat(html): frameset documents and void frame element (#83) 2026-06-09 06:17:55 +02:00
HTMLSelectTests.swift feat(html): in-select-in-table closes select on table tags (#83) 2026-06-09 06:37:35 +02:00
HTMLTests.swift
HTMLTokenizerTests.swift feat(html): vendor the complete WHATWG named entity set (#84) 2026-06-09 07:45:55 +02:00
HTMLValidationTests.swift feat(html): conformance validator as composable Validation rules 2026-06-09 04:39:03 +02:00
LineEndingTests.swift feat(parsing): line-ending normalization and XML 1.1 line terminators 2026-06-08 15:07:21 +02:00
LintTests.swift
ModelTests.swift
NamespaceTests.swift
OutputEncodingTests.swift feat(emitting): CJK output encodings, closing output-encoding parity 2026-06-09 09:41:28 +02:00
ParityEdgeTests.swift
ParsingTests.swift
PatternTests.swift
PushParserTests.swift
QuickFixTests.swift
RecoveringReaderTests.swift
RegexCategoryTests.swift feat(regex): Unicode category escapes and character-class subtraction 2026-06-08 15:15:46 +02:00
RegexTests.swift
RelaxNGCombineTests.swift feat(relaxng): combine on define (choice/interleave merging) 2026-06-08 16:03:39 +02:00
RelaxNGCompactAnnotationTests.swift feat(relaxng): handle RNC annotations and div grouping 2026-06-08 17:12:35 +02:00
RelaxNGCompactConcatTests.swift feat(relaxng): fold RNC ~ string concatenation 2026-06-08 17:38:58 +02:00
RelaxNGCompactFollowAnnotationTests.swift feat(relaxng): skip RNC >> follow-annotations, completing #79 2026-06-09 03:20:47 +02:00
RelaxNGCompactParamTests.swift feat(relaxng): compact-syntax datatype parameter blocks 2026-06-08 16:55:57 +02:00
RelaxNGCompactTests.swift
RelaxNGDataParamTests.swift feat(relaxng): resolve datatypeLibrary and nsName subtraction 2026-06-08 17:21:49 +02:00
RelaxNGDatatypeLibraryTests.swift feat(relaxng): resolve datatypeLibrary and nsName subtraction 2026-06-08 17:21:49 +02:00
RelaxNGLocatedErrorTests.swift feat(relaxng): distinguish undeclared attribute from invalid value 2026-06-09 01:11:54 +02:00
RelaxNGNameClassTests.swift feat(relaxng): compact name-class subtraction (* - name) 2026-06-08 16:58:24 +02:00
RelaxNGTests.swift feat(relaxng): resolve datatypeLibrary and nsName subtraction 2026-06-08 17:21:49 +02:00
RelaxNGValueSpaceTests.swift feat(relaxng): compare typed <value> in the datatype value space 2026-06-08 17:36:16 +02:00
SaveOptionsTests.swift
SAXTests.swift
SchemaConformanceTests.swift
SchematronAbstractPatternTests.swift feat(schematron): instantiate abstract patterns with is-a/param 2026-06-08 17:58:33 +02:00
SchematronAbstractTests.swift feat(schematron): abstract rules and extends 2026-06-08 16:26:30 +02:00
SchematronDiagnosticTests.swift feat(schematron): diagnostics 2026-06-08 16:30:13 +02:00
SchematronDynamicTests.swift feat(schematron): dynamic message content and phase support 2026-06-08 15:45:27 +02:00
SchematronFunctionTests.swift feat(schematron): support key(), document(), and current() in tests 2026-06-09 03:30:43 +02:00
SchematronLetTests.swift feat(schematron): rule-level let variable bindings 2026-06-08 16:23:26 +02:00
SchematronScopedLetTests.swift feat(schematron): schema- and pattern-level let 2026-06-08 16:52:16 +02:00
SchematronTests.swift
SerializationEscapeTests.swift feat(emitting): textEscaping round-trip option to preserve carriage returns (#91) 2026-06-09 03:48:20 +02:00
SerializationOptionsTests.swift feat(emitting): attribute quote style, line endings, xml:space, writer namespaces 2026-06-08 15:24:49 +02:00
SerializerTests.swift
SourceSpanTests.swift
TextReaderBreadthTests.swift feat(parsing): xmlReader breadth: attribute navigation, namespaces, lang, position 2026-06-08 15:01:48 +02:00
TextReaderTests.swift
TreeNodeEditingTests.swift feat(model): TreeNode editing helpers (attributes, shallow copy, order, normalize) 2026-06-08 15:19:33 +02:00
TreeNodeIdentityTests.swift feat(model): first-class doctype/entity-reference/namespace nodes, ownerDocument, adoption (#90) 2026-06-09 03:43:24 +02:00
TreeNodeTests.swift
ValidationFrameworkTests.swift test(validation): cover the Bool forms of the && and || combinators 2026-06-09 09:08:27 +02:00
ValidationRuleTests.swift refactor(validation): decompose DTD attribute checks into per-constraint rules (#101) 2026-06-09 04:28:03 +02:00
ValidationTests.swift
WriterTests.swift
XIncludeNegotiationTests.swift feat(xinclude): content-negotiation hints, cycle detection, text+fragment 2026-06-08 15:52:18 +02:00
XIncludeTests.swift feat(xinclude): range inclusion via XPointer range model (#87) 2026-06-09 04:19:38 +02:00
XMLCharacterTests.swift
XMLDeclarationTests.swift
XPathAxisTests.swift
XPathContextTests.swift
XPathExpressionTests.swift
XPathFunctionTests.swift
XPathNamespaceTests.swift feat(xpath): eval-time namespace context and XPointer xmlns()/xpath1() schemes 2026-06-08 16:00:15 +02:00
XPathTests.swift
XPointerRangeTests.swift feat(xpointer): range(), range-to(), and string-range() schemes (#88) 2026-06-09 04:16:23 +02:00
XPointerTests.swift
XSDCategoryTests.swift feat(xsd): located, recovering content-model errors 2026-06-09 00:55:17 +02:00
XSDCompletionTests2.swift
XSDComplexTypeTests.swift
XSDCompositionTests.swift
XSDDatatypeTests.swift
XSDDerivationControlTests.swift
XSDIdentityTests.swift test(xsd): prove identity-error location at full selector depth 2026-06-09 09:02:41 +02:00
XSDImportTests.swift
XSDLocatedContentTests.swift feat(xsd): located, recovering content-model errors 2026-06-09 00:55:17 +02:00
XSDNamespaceTests.swift
XSDSchemaTests.swift
XSDValueConstraintTests.swift
XSDWildcardTests.swift
XSLTApplyImportsTests.swift feat(xslt): implement xsl:apply-imports 2026-06-09 01:49:33 +02:00
XSLTAttributeSetTests.swift feat(xslt): implement xsl:attribute-set and use-attribute-sets 2026-06-09 01:39:45 +02:00
XSLTCDATASectionTests.swift feat(xslt): implement xsl:output cdata-section-elements 2026-06-09 02:58:34 +02:00
XSLTDecimalFormatTests.swift feat(xslt): implement xsl:decimal-format for format-number 2026-06-09 01:59:37 +02:00
XSLTDoctypeOutputTests.swift feat(xslt): emit xsl:output doctype-public/doctype-system 2026-06-09 02:53:50 +02:00
XSLTDocumentFunctionTests.swift feat(xslt): document() fragments and base-URI resolution, completing #82 2026-06-09 03:12:49 +02:00
XSLTFallbackTests.swift feat(xslt): implement xsl:fallback for forwards-compatible processing 2026-06-09 01:52:21 +02:00
XSLTFunctionTests.swift feat(xslt): add generate-id, system-property, *-available functions 2026-06-09 02:20:36 +02:00
XSLTHTMLOutputTests.swift feat(xslt): serialize method=html output by the HTML rules 2026-06-09 02:48:00 +02:00
XSLTKeyNodeSetTests.swift feat(xslt): key() over a node-set second argument 2026-06-09 02:50:24 +02:00
XSLTMessageTests.swift feat(xslt): implement xsl:message with terminate 2026-06-09 01:29:37 +02:00
XSLTNamespaceAliasTests.swift feat(xslt): implement xsl:namespace-alias, completing #81 2026-06-09 02:10:16 +02:00
XSLTParityTests.swift
XSLTParserTests.swift feat(xslt): implement xsl:attribute-set and use-attribute-sets 2026-06-09 01:39:45 +02:00
XSLTResultFragmentTests.swift feat(xslt): make result-tree fragments usable as node-sets 2026-06-09 03:04:56 +02:00
XSLTSortCaseOrderTests.swift feat(xslt): implement xsl:sort case-order 2026-06-09 02:37:43 +02:00
XSLTTests.swift
XSLTWhitespaceTests.swift feat(xslt): implement xsl:strip-space and xsl:preserve-space 2026-06-09 01:22:59 +02:00