Commit 8ddc065
committed
ci: exercise the full public API in the release smoke test
Since each smoke leg pays for a fresh runner/container spin-up, expand
what one run verifies instead of adding more legs. Smoke.java now
touches essentially every public entry point in the zstd module:
- version/sizing info, core + bounded decompress, zero-copy
decompressedSize(MemorySegment)
- deterministic error paths (undersized buffer -> DST_SIZE_TOO_SMALL,
corrupted checksum trailer -> CHECKSUM_WRONG)
- ZstdFrame introspection (byte[] and MemorySegment overloads) and
skippable frames
- ZstdCompressContext/ZstdDecompressContext: parameters, all reset
directives, sizeOf(), prefix (delta) compression
- all 6 dictionary training variants, digested compress/decompress
dictionaries (every constructor), refDictionary
- zero-copy streaming (ZstdCompressStream/ZstdDecompressStream,
progress()) and java.io streaming (ZstdOutputStream/ZstdInputStream,
withPledgedSize)
- ZstdBounds for every compress/decompress parameter, ZstdErrorCode
descriptions
Deliberately excludes multithreaded compression (NB_WORKERS > 0): the
bundled native library is single-threaded, so exercising it would only
prove the parameter is a no-op.
Compiled and run locally against a fresh build (zstd-0.7.jar +
zstd-native-osx-aarch64-0.7.jar) before pushing.1 parent d7cd2aa commit 8ddc065
1 file changed
Lines changed: 575 additions & 25 deletions
0 commit comments