rea/tests/fixtures/native-macos/archive-xml-encoding
Rudy Mizrahi Celekli 23c4eba5b3
fix(artifacts): respect XML plist byte-order marks (#514)
Signed-off-by: Rudy Celekli <47457359+rudycelekli@users.noreply.github.com>
2026-10-05 14:59:21 +08:00
..
README.md fix(artifacts): respect XML plist byte-order marks (#514) 2026-10-05 14:59:21 +08:00
archive.xml fix(artifacts): respect XML plist byte-order marks (#514) 2026-10-05 14:59:21 +08:00
producer.swift fix(artifacts): respect XML plist byte-order marks (#514) 2026-10-05 14:59:21 +08:00

README.md

Foundation XML archive encoding fixture

producer.swift creates an actual NSKeyedArchiver XML representation, then uses Foundation string encoding to produce BOM-marked UTF-16 little- and big-endian representations of the same XML graph. Foundation's PropertyListSerialization reads both representations successfully; plutil -lint also accepts all three files.

xcrun swiftc producer.swift -o writer
./writer archive.xml little-endian.plist big-endian.plist
plutil -lint archive.xml little-endian.plist big-endian.plist

Only the UTF-8 XML source capture is committed. The tests encode its same text as UTF-16 so no compiled binaries or binary fixtures are committed. This is format/filesystem verification; no archived classes are instantiated by REA.