Files
mars-dosutils/test/login/LGNTSTA.BAT
Mario Fetka f214e89d69 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
2026-05-27 13:31:46 +02:00

129 lines
4.4 KiB
Batchfile

@ECHO OFF
REM LGNTSTA.BAT
REM Two-stage LOGIN/LOGOUT baseline test for MARS NWE.
REM
REM START from F: while logged in as SUPERVISOR:
REM F:\LGNTSTA
REM Then run the C: helper manually:
REM C:
REM CD \LGNTTMP
REM LGNTC
REM After that login manually using the local C: LOGIN copy and run:
REM C:\LGNTTMP\LOGIN SUPERVISOR
REM F:\LGNTSTA PART2
REM
REM PART2 copies captured C: results back to F:\LGNTCMP.
REM SYS:LOGIN / SYS:PUBLIC are NOT overwritten by this test.
IF "%1"=="" GOTO PART1
IF "%1"=="PART2" GOTO PART2
IF "%1"=="PARt2" GOTO PART2
IF "%1"=="PArT2" GOTO PART2
IF "%1"=="PArt2" GOTO PART2
IF "%1"=="PaRT2" GOTO PART2
IF "%1"=="PaRt2" GOTO PART2
IF "%1"=="ParT2" GOTO PART2
IF "%1"=="Part2" GOTO PART2
IF "%1"=="pART2" GOTO PART2
IF "%1"=="pARt2" GOTO PART2
IF "%1"=="pArT2" GOTO PART2
IF "%1"=="pArt2" GOTO PART2
IF "%1"=="paRT2" GOTO PART2
IF "%1"=="paRt2" GOTO PART2
IF "%1"=="parT2" GOTO PART2
IF "%1"=="part2" GOTO PART2
GOTO USAGE
:PART1
F:
CD \
REM --- Recreate generated result/temp directories. ---
IF EXIST LGNTCMP DELTREE /Y LGNTCMP
MD LGNTCMP > NUL
MD LGNTCMP\OUT > NUL
ECHO LGNTSTA LOGIN/LOGOUT test > F:\LGNTCMP\RUN.LOG
ECHO Part 1 started while logged in as SUPERVISOR. >> F:\LGNTCMP\RUN.LOG
ECHO Helper will use user NOPASSUSER on server MARS. >> F:\LGNTCMP\RUN.LOG
ECHO This test is manual after logout because F: disappears. >> F:\LGNTCMP\RUN.LOG
ECHO SYS:LOGIN, SYS:PUBLIC, and SYS:NPUBLIC are not modified. >> F:\LGNTCMP\RUN.LOG
ECHO. >> F:\LGNTCMP\RUN.LOG
IF EXIST C:\LGNTTMP DELTREE /Y C:\LGNTTMP
MD C:\LGNTTMP > NUL
REM --- Copy Novell baseline tools to local C: directory only. ---
REM Do not overwrite SYS:LOGIN, SYS:PUBLIC, or SYS:NPUBLIC.
REM LOGIN/MAP are from NLOGIN, LOGOUT is from NPUBLIC.
REM The helper runs from C:\LGNTTMP so DOS should find tools there after LOGOUT.
ECHO Copying Novell runtime tools to C:\LGNTTMP. >> F:\LGNTCMP\RUN.LOG
COPY \NLOGIN\LOGIN.* C:\LGNTTMP >> F:\LGNTCMP\RUN.LOG
COPY \NLOGIN\MAP.* C:\LGNTTMP >> F:\LGNTCMP\RUN.LOG
COPY \NPUBLIC\LOGOUT.* C:\LGNTTMP >> F:\LGNTCMP\RUN.LOG
ECHO Copying helper to C:\LGNTTMP\LGNTC.BAT >> F:\LGNTCMP\RUN.LOG
COPY F:\LGNTC.BAT C:\LGNTTMP >> F:\LGNTCMP\RUN.LOG
ECHO. >> F:\LGNTCMP\RUN.LOG
ECHO NEXT MANUAL STEPS: >> F:\LGNTCMP\RUN.LOG
ECHO C: >> F:\LGNTCMP\RUN.LOG
ECHO CD \LGNTTMP >> F:\LGNTCMP\RUN.LOG
ECHO LGNTC >> F:\LGNTCMP\RUN.LOG
ECHO C:\LGNTTMP\LOGIN SUPERVISOR >> F:\LGNTCMP\RUN.LOG
ECHO F:\LGNTSTA PART2 >> F:\LGNTCMP\RUN.LOG
ECHO LGNTSTA Part 1 fertig.
ECHO Jetzt manuell ausfuehren:
ECHO C:
ECHO CD \LGNTTMP
ECHO LGNTC
ECHO Danach wieder als SUPERVISOR einloggen mit:
ECHO C:\LGNTTMP\LOGIN SUPERVISOR
ECHO Dann:
ECHO F:\LGNTSTA PART2
GOTO END
:PART2
F:
CD \
MD LGNTCMP > NUL
MD LGNTCMP\OUT > NUL
ECHO. >> F:\LGNTCMP\RUN.LOG
ECHO Part 2 collecting files from C:\LGNTTMP. >> F:\LGNTCMP\RUN.LOG
COPY C:\LGNTTMP\*.OUT F:\LGNTCMP\OUT >> F:\LGNTCMP\RUN.LOG
COPY C:\LGNTTMP\*.TXT F:\LGNTCMP\OUT >> F:\LGNTCMP\RUN.LOG
ECHO === SUMMARY === > F:\LGNTCMP\SUMMARY.TXT
ECHO LGNTSTA LOGIN/LOGOUT baseline finished. >> F:\LGNTCMP\SUMMARY.TXT
ECHO Novell LOGIN/MAP/LOGOUT were copied only to C:\LGNTTMP. >> F:\LGNTCMP\SUMMARY.TXT
ECHO LOGIN/MAP source: SYS:NLOGIN. LOGOUT source: SYS:NPUBLIC. >> F:\LGNTCMP\SUMMARY.TXT
ECHO SYS:LOGIN, SYS:PUBLIC, and SYS:NPUBLIC were not modified. >> F:\LGNTCMP\SUMMARY.TXT
ECHO. >> F:\LGNTCMP\SUMMARY.TXT
ECHO Expected files: >> F:\LGNTCMP\SUMMARY.TXT
ECHO - D01_LOG.OUT LOGOUT output from initial supervisor session. >> F:\LGNTCMP\SUMMARY.TXT
ECHO - D02_LGIN.OUT LOGIN NOPASSUSER baseline output. >> F:\LGNTCMP\SUMMARY.TXT
ECHO - D03_MAP.OUT MAP output after NOPASSUSER login. >> F:\LGNTCMP\SUMMARY.TXT
ECHO - D04_LGOT.OUT LOGOUT output from NOPASSUSER session. >> F:\LGNTCMP\SUMMARY.TXT
ECHO - D99_HELP.OUT Simulated LOGIN usage baseline if help is not redirectable. >> F:\LGNTCMP\SUMMARY.TXT
ECHO. >> F:\LGNTCMP\SUMMARY.TXT
ECHO Optional: LGNTZIP ausfuehren. >> F:\LGNTCMP\SUMMARY.TXT
ECHO LGNTSTA PART2 fertig.
ECHO Ergebnisse liegen in F:\LGNTCMP
ECHO Optional: LGNTZIP ausfuehren.
GOTO END
:USAGE
ECHO Usage: LGNTSTA [PART2]
ECHO.
ECHO Ohne Parameter startet LGNTSTA Part 1.
ECHO PART2 sammelt nach dem erneuten SUPERVISOR-Login die C:-Ergebnisse ein.
ECHO Gueltiger Parameter ist PART2; part2/Part2 wird ebenfalls akzeptiert.
ECHO Beispiel:
ECHO F:\LGNTSTA PART2
GOTO END
:END