feat: extract complete multi-cabinet sets
This commit is contained in:
34
tests/fixtures/README.md
vendored
34
tests/fixtures/README.md
vendored
@@ -133,6 +133,40 @@ required `0xFF` byte after each CFDATA block in memory. These are CAB-level
|
||||
codec fixtures, not OneNote exports, and do not establish producer-specific
|
||||
`.onepkg` compatibility.
|
||||
|
||||
## libmspack five-part CAB fixture
|
||||
|
||||
`libmspack-multi-basic-pt1.cab.b64` through
|
||||
`libmspack-multi-basic-pt5.cab.b64` are byte-for-byte copies of libmspack's
|
||||
[`multi_basic_pt*.cab`](https://github.com/kyz/libmspack/tree/55d501976171397ccd5d5a7a1ca7da065b1d9a06/libmspack/test/test_files/cabd)
|
||||
fixtures at commit
|
||||
[`55d501976171397ccd5d5a7a1ca7da065b1d9a06`](https://github.com/kyz/libmspack/commit/55d501976171397ccd5d5a7a1ca7da065b1d9a06).
|
||||
The immediate reviewed source is LGPL-2.1-only; its exact licence text is in
|
||||
`LICENSES/libmspack-LGPL-2.1.txt`.
|
||||
|
||||
The CAB headers name the parts `cabd_multi_basic_pt1.cab` through
|
||||
`cabd_multi_basic_pt5.cab`. They form set ID 12345, indexes 0 through 4, and
|
||||
split one 190-byte uncompressed CFDATA block across all five cabinets. The
|
||||
three spanning files contain the five ASCII lines
|
||||
`This is the data from cabinet part N.` (plus line feeds), grouped as parts
|
||||
1–2, part 3, and parts 4–5.
|
||||
|
||||
- Part 1: 221 bytes; SHA-256
|
||||
`3658aaf68b0d538a5b321919f1de3eb1bcc258cba44e97b07a1938230995c632`.
|
||||
- Part 2: 274 bytes; SHA-256
|
||||
`ce5fac4470fb850ae593de70ab03d3493069b77f8f81376216768bbf74e52321`.
|
||||
- Part 3: 274 bytes; SHA-256
|
||||
`e58b57f63ac0858effa75ceb6f242b447fbce6a910d3840c37228fdbc9e7bc95`.
|
||||
- Part 4: 274 bytes; SHA-256
|
||||
`fbcd45e503c3cffd5f5946ccc45bbc46b9884fe47abef7d09247154c7f8148fb`.
|
||||
- Part 5: 221 bytes; SHA-256
|
||||
`16ebbb274c8dc09f98415795212683b9ea8b2d6450080a79ab63cd5cdbac7cc4`.
|
||||
|
||||
Tests retain all hashes and exercise unordered selection, strict link/set/order
|
||||
validation, `0xFFFD`/`0xFFFE`/`0xFFFF` spanning-file reconciliation, split-block
|
||||
reassembly, reserve/compression continuity, aggregate limits, and cancellation.
|
||||
These are generic CAB fixtures, not OneNote exports, and do not establish
|
||||
producer-specific `.onepkg` compatibility.
|
||||
|
||||
## Distribution policy
|
||||
|
||||
The decoded fixture bytes are used only by tests. Vite does not copy them into
|
||||
|
||||
Reference in New Issue
Block a user