Files
mars-nwe/tests/README.md
OpenAI b39976c239
All checks were successful
Source release / source-package (push) Successful in 57s
tests: accept duplicate original names in salvage scan
2026-05-31 18:49:22 +02:00

37 lines
1.7 KiB
Markdown

# mars_nwe test helpers
The test tree contains small smoke helpers for protocol areas that are easier to
exercise outside the normal install flow.
## AFP
`tests/afp` contains the current AFP endpoint smoke suite and AFP-specific
notes. AFP deleted-file endpoint `0x13` is intentionally still unsupported
until the shared salvage backend exposes scan/recover/purge semantics.
## Salvage
`tests/salvage` contains the shared NetWare salvage coverage. These tests are
kept outside `tests/afp` because AFP `0x13` must become a thin adapter over the
same backend that serves the NetWare NCP salvage calls.
The current salvage tests cover:
- local layout contract for `.recycle` payloads and `.salvage` JSON metadata,
- NCP create/delete capture through the normal server delete path,
- Samba-compatible history naming with `Copy #1 of NAME`,
- NCP `87/16` Scan Salvageable Files through the official `ncpfs` helper API,
- report-file generation with `--out FILE`.
`tests/salvage/salvage_smoke_suite.sh` is the single NCP integration entry
point. It creates and deletes the same file twice, then appends the `87/16` scan check,
so one report covers delete capture, history/versioning, and scan visibility.
The scan check expects duplicate sequence entries for the original deleted name;
the `Copy #1 of ...` history path is validated through the JSON sidecars.
The NCP smoke suite is intended to run as the same Unix user that normally runs
the test client, not necessarily as root. Pre-clean of old `.recycle` or
`.salvage` artifacts is therefore best-effort: permission failures are reported
as warnings and do not by themselves fail the smoke. The actual pass/fail check
is based on artifacts created by the NCP delete path.