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

87
test/rights/RGHTSTA.BAT Normal file
View File

@@ -0,0 +1,87 @@
@ECHO OFF
REM RGHTSTA.BAT
REM Automated RIGHTS baseline test for MARS NWE.
REM
REM Uses \NPUBLIC\RIGHTS as Novell baseline for currently implemented tool behavior.
REM This test is read-only from the RIGHTS tool point of view. It only creates
REM a small local test tree so directory, file, relative, current-directory,
REM missing-path, and usage output can be captured.
REM
REM Result tree:
REM F:\RGHTCMP
REM Test tree:
REM F:\RGHTEST
F:
CD \
REM --- Clean generated test/result directories (contents only). ---
IF EXIST RGHTEST\NUL DELTREE /Y RGHTEST\*.*
IF EXIST RGHTCMP\NUL DELTREE /Y RGHTCMP\*.*
IF NOT EXIST RGHTEST\NUL MD RGHTEST
IF NOT EXIST RGHTEST\SUBDIR\NUL MD RGHTEST\SUBDIR
IF NOT EXIST RGHTCMP\NUL MD RGHTCMP
IF NOT EXIST RGHTCMP\OUT\NUL MD RGHTCMP\OUT
ECHO RIGHTS ROOT FILE > F:\RGHTEST\FILE.TXT
ECHO RIGHTS INNER FILE > F:\RGHTEST\SUBDIR\INNER.TXT
ECHO RGHTSTA RIGHTS baseline test > F:\RGHTCMP\RUN.LOG
ECHO Creates F:\RGHTEST and captures \NPUBLIC\RIGHTS output. >> F:\RGHTCMP\RUN.LOG
ECHO. >> F:\RGHTCMP\RUN.LOG
ECHO === D01 default/current directory from F:\ === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS > F:\RGHTCMP\OUT\D01_CURRENT_ROOT.OUT
ECHO === D02 explicit test directory === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST > F:\RGHTCMP\OUT\D02_TESTDIR.OUT
ECHO === D03 explicit subdirectory === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST\SUBDIR > F:\RGHTCMP\OUT\D03_SUBDIR.OUT
ECHO === D04 explicit file === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST\FILE.TXT > F:\RGHTCMP\OUT\D04_FILE.OUT
ECHO === D05 explicit nested file === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST\SUBDIR\INNER.TXT > F:\RGHTCMP\OUT\D05_INNER_FILE.OUT
ECHO === D06 default/current directory from F:\RGHTEST === >> F:\RGHTCMP\RUN.LOG
CD \RGHTEST
\NPUBLIC\RIGHTS > F:\RGHTCMP\OUT\D06_CURRENT_TESTDIR.OUT
ECHO === D07 relative file from F:\RGHTEST === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS FILE.TXT > F:\RGHTCMP\OUT\D07_REL_FILE.OUT
ECHO === D08 relative subdir from F:\RGHTEST === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS SUBDIR > F:\RGHTCMP\OUT\D08_REL_SUBDIR.OUT
CD \
ECHO === D90 missing directory/path === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST\MISSING > F:\RGHTCMP\OUT\D90_MISSING_DIR.OUT
ECHO === D91 missing file/path === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST\NOFILE.TXT > F:\RGHTCMP\OUT\D91_MISSING_FILE.OUT
ECHO === D98 too many arguments === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS F:\RGHTEST EXTRA > F:\RGHTCMP\OUT\D98_TOO_MANY.OUT
ECHO === D99 usage/help === >> F:\RGHTCMP\RUN.LOG
\NPUBLIC\RIGHTS /? > F:\RGHTCMP\OUT\D99_HELP.OUT
ECHO === SUMMARY === > F:\RGHTCMP\SUMMARY.TXT
ECHO RGHTSTA RIGHTS baseline finished. >> F:\RGHTCMP\SUMMARY.TXT
ECHO. >> F:\RGHTCMP\SUMMARY.TXT
ECHO Expected: >> F:\RGHTCMP\SUMMARY.TXT
ECHO - D01/D02/D03/D06/D08 capture directory rights formatting. >> F:\RGHTCMP\SUMMARY.TXT
ECHO - D04/D05/D07 capture file rights formatting. >> F:\RGHTCMP\SUMMARY.TXT
ECHO - D07/D08 capture relative path behavior. >> F:\RGHTCMP\SUMMARY.TXT
ECHO - D90/D91 capture missing-path errors. >> F:\RGHTCMP\SUMMARY.TXT
ECHO - D98/D99 capture usage/help behavior. >> F:\RGHTCMP\SUMMARY.TXT
ECHO. >> F:\RGHTCMP\SUMMARY.TXT
ECHO Optional: RGHTZIP ausfuehren. >> F:\RGHTCMP\SUMMARY.TXT
ECHO RGHTSTA fertig.
ECHO Ergebnisse liegen in F:\RGHTCMP
ECHO Optional: RGHTZIP ausfuehren.