tests: add Novell DOS tool baseline suite

Add DOS-side baseline scripts for the Novell tools used to compare the
reimplemented public utilities.

The suite covers the current baseline set:

  MAP
  SLIST
  WHOAMI
  LOGIN / LOGOUT
  NDIR
  NCOPY
  FLAG
  FLAGDIR
  CREATOR
  RIGHTS
  GRANT
  REVOKE
  REMOVE

It also includes supporting trustee, rights, rename, move, delete and
file-operation tests.

Each test writes reproducible output into a per-tool CMP directory and
provides a matching ZIP helper for collecting the results. The ZIP
helpers clean generated test trees afterwards so SYS: does not keep
accumulating temporary directories.

This is the Novell baseline layer only. A later change can extend the
same scripts to run the full comparison cycle:

  NPUBLIC baseline -> PUBLIC implementation -> NPUBLIC control
This commit is contained in:
Mario Fetka
2026-05-27 13:31:46 +02:00
parent 0df41482c7
commit f214e89d69
65 changed files with 4831 additions and 0 deletions

34
test/README.md Normal file
View File

@@ -0,0 +1,34 @@
# MARS dosutils tests
This directory contains DOS-side regression and compatibility tests for `mars-dosutils`.
The tests are grouped by feature so that Novell reference-tool checks and our own tool regressions stay separated but easy to compare.
## Directory layout
| Directory | Purpose |
| --- | --- |
| `flag/` | File/directory attribute tests, Novell `NPUBLIC\FLAG` baseline and MARS `PUBLIC\FLAG` regression notes. |
| `flagdir/` | Planned: directory-specific FLAG and recursive attribute tests. |
| `grant/` | Planned: trustee grant tests. |
| `rights/` | Planned: effective-rights and trustee readback tests. |
| `map/` | Planned: MAP command and login-script mapping tests. |
| `login/` | Planned: LOGIN/NLOGIN compatibility tests. |
| `logout/` | Planned: LOGOUT/NLOGOUT compatibility tests. |
## Naming
DOS-executed files should use 8.3 names. Keep Novell reference tests and MARS tests close together, but name them clearly.
Suggested suffixes:
- `*N.BAT` for Novell-only baseline tests using `NPUBLIC`/`NLOGIN`.
- `*M.TST` or `*M.BAT` for MARS/dosutils tests using `PUBLIC`/`LOGIN`.
- `*CMP.BAT` for comparison/helper scripts.
## Expected workflow
1. Run the Novell baseline test first.
2. Check the MARS NWE server log for the expected NCP path and completion codes.
3. Run or implement the matching MARS/dosutils regression test.
4. Keep notes in the feature directory `README.md`.