summaryrefslogtreecommitdiffstats
path: root/basic/scripts
diff options
context:
space:
mode:
authorSteve Dickson <steved@redhat.com>2009-02-22 14:43:02 -0500
committerSteve Dickson <steved@redhat.com>2009-02-22 14:43:02 -0500
commit43d64aa2dabf5029aac3e503a875a3cda6c5d253 (patch)
tree34b0d7d90205ca9f6a26c319638d80d44ee03bd7 /basic/scripts
downloadcthon04-43d64aa2dabf5029aac3e503a875a3cda6c5d253.tar.gz
cthon04-43d64aa2dabf5029aac3e503a875a3cda6c5d253.tar.xz
cthon04-43d64aa2dabf5029aac3e503a875a3cda6c5d253.zip
Inital Commit
Diffstat (limited to 'basic/scripts')
-rw-r--r--basic/scripts/basic.bat101
-rw-r--r--basic/scripts/basic2.bat72
-rw-r--r--basic/scripts/basic3.bat101
-rw-r--r--basic/scripts/cthon.bat16
-rw-r--r--basic/scripts/cthon00.mst126
-rw-r--r--basic/scripts/cthon01.mst436
-rw-r--r--basic/scripts/cthon02.mst469
-rw-r--r--basic/scripts/cthon03.mst428
-rw-r--r--basic/scripts/cthon04.mst366
-rw-r--r--basic/scripts/runcthon.prl66
10 files changed, 2181 insertions, 0 deletions
diff --git a/basic/scripts/basic.bat b/basic/scripts/basic.bat
new file mode 100644
index 0000000..9f10032
--- /dev/null
+++ b/basic/scripts/basic.bat
@@ -0,0 +1,101 @@
+
+rem @(#)basic.bat 1.1 98/10/26 Connectathon Testsuite
+@echo off
+echo.
+echo Starting CONNECTATHON BASIC tests
+echo.
+
+set TESTDIR=%2
+set TESTARG1=%3
+set TESTARG2=%4
+set OLDPATH=%PATH%
+
+echo Arg1 is the network_drive: to create the test dir on = %1%
+rem Note: Arg1 should also be the drive you start the macro (ie. L:)
+echo Arg2 is the basename of the directory to create = %TESTDIR%
+echo Arg3 is the value of test arg1 = %TESTARG1%
+echo Arg4 is the value of test arg2 = %TESTARG2%
+echo Arg5 is the full path to the directory containing the tests = %5%
+echo.
+
+choice /t:C,10 /n /c:AC (A-bort or C-ontinue):
+if errorlevel 2 goto Continue
+if errorlevel 1 goto Exit
+:Continue
+
+PATH=%5;%PATH%
+
+%1
+cd \
+
+deltree /y %TESTDIR%*
+
+set NFSTESTDIR=%TESTDIR%1
+test1 %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+
+test2 %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%3
+rem test3 Only 1 Param
+test3 %TESTARG1%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%4
+test4 %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%5
+test5 %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%6
+rem "'test6 Param 1 must be <= Param 2'"
+test6 %TESTARG1% %TESTARG1%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%7
+test7 %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%8
+test8 %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+rem No cd .. or deltree /y needed
+
+set NFSTESTDIR=%TESTDIR%9
+rem test9 Only 1 Param
+test9 %TESTARG1%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+echo "Congratulations, you completed the basic tests!"
+
+:Exit
+
+PATH=%OLDPATH%
+
diff --git a/basic/scripts/basic2.bat b/basic/scripts/basic2.bat
new file mode 100644
index 0000000..9ee4e38
--- /dev/null
+++ b/basic/scripts/basic2.bat
@@ -0,0 +1,72 @@
+
+rem @(#)basic2.bat 1.1 98/10/26 Connectathon Testsuite
+@echo off
+echo.
+echo Starting CONNECTATHON BASIC tests 4a, 5a, 5b, 7a & 7b
+echo.
+
+set TESTDIR=%2
+set TESTARG1=%3
+set TESTARG2=%4
+set OLDPATH=%PATH%
+
+echo Arg1 is the network_drive: to create the test dir on = %1%
+rem Note: Arg1 should be the drive you start the macro from also
+echo Arg2 is the basename of the directory to create = %TESTDIR%
+echo Arg3 is the value of test arg1 = %TESTARG1%
+echo Arg4 is the value of test arg2 = %TESTARG2%
+echo Arg5 is the full path to the directory containing the tests = %5%
+echo.
+
+choice /t:C,10 /n /c:AC (A-bort or C-ontinue):
+if errorlevel 2 goto Continue
+if errorlevel 1 goto Exit
+:Continue
+
+PATH=%5;%PATH%
+
+%1
+cd \
+
+deltree /y %TESTDIR%*
+
+set NFSTESTDIR=%TESTDIR%4
+test4a %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%5
+test5a %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+
+set NFSTESTDIR=%TESTDIR%5
+test5b %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%7
+test7a %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%7
+test7b %TESTARG1% %TESTARG2%
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+echo "Congratulations, you completed the basic tests!"
+
+:Exit
+
+PATH=%OLDPATH%
+
diff --git a/basic/scripts/basic3.bat b/basic/scripts/basic3.bat
new file mode 100644
index 0000000..f19cacc
--- /dev/null
+++ b/basic/scripts/basic3.bat
@@ -0,0 +1,101 @@
+
+rem @(#)basic3.bat 1.1 98/10/26 Connectathon Testsuite
+@echo off
+echo.
+echo Starting CONNECTATHON BASIC tests 1 -9 with Stress Load Parameters
+echo.
+
+set TESTDIR=%2
+set TESTARG1=%3
+set TESTARG2=%4
+set OLDPATH=%PATH%
+
+echo Arg1 is the network drive to create the test dir on = %1%
+rem Note: Arg1 should be the drive you start the macro from also
+echo Arg2 is the basename of the directory to create = %TESTDIR%
+echo Arg3 is the value of test arg1 = %TESTARG1%
+echo Arg4 is the value of test arg2 = %TESTARG2%
+echo Arg5 is the full path to the directory containing the tests = %5%
+echo.
+
+choice /t:C,10 /n /c:AC (A-bort or C-ontinue):
+if errorlevel 2 goto Continue
+if errorlevel 1 goto Exit
+:Continue
+
+PATH=%5;%PATH%
+
+%1
+cd \
+
+deltree /y %TESTDIR%*
+
+set NFSTESTDIR=%TESTDIR%1
+test1 4 10 5
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+
+test2 4 10 5
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%3
+rem test3 Only 1 Param
+test3 1000
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%4
+test4 500 100
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%5
+test5 8192 128
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%6
+rem "'test6 Param 1 must be <= Param 2'"
+test6 512 512
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%7
+test7 10 100
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+set NFSTESTDIR=%TESTDIR%8
+test8 1 1
+if errorlevel 1 echo *** Test Failed ***
+%1
+rem No cd .. or deltree /y needed
+
+set NFSTESTDIR=%TESTDIR%9
+rem test9 Only 1 Param
+test9 1000
+if errorlevel 1 echo *** Test Failed ***
+%1
+cd \
+deltree /y %NFSTESTDIR%
+
+echo "Congratulations, you completed the basic tests!"
+
+:Exit
+
+PATH=%OLDPATH%
+
diff --git a/basic/scripts/cthon.bat b/basic/scripts/cthon.bat
new file mode 100644
index 0000000..0d27ee5
--- /dev/null
+++ b/basic/scripts/cthon.bat
@@ -0,0 +1,16 @@
+rem @(#)cthon.bat 1.1 98/10/26 Connectathon Testsuite
+@echo off
+
+rem %1 path to executable
+rem %2 name of test
+rem %3 testdir name
+rem %4 logfile name
+rem %+ parameters
+
+
+PATH=%1;%PATH%
+set NFSTESTDIR=%3
+
+@echo on
+redir -r2 %2 %5 %6 %7 %8 %9 >> %4
+
diff --git a/basic/scripts/cthon00.mst b/basic/scripts/cthon00.mst
new file mode 100644
index 0000000..67a19b6
--- /dev/null
+++ b/basic/scripts/cthon00.mst
@@ -0,0 +1,126 @@
+'******************************* CTHON00.MST *********************************
+' @(#)cthon00.mst 1.1 98/10/26 Connectathon Testsuite
+'
+'Description: This test suite contains a set of test cases and scenarios that
+' are used to test Directory Caching. It is the same as CTHON01,
+' except that it uses the MS-Test SHELL command instead of RUN.
+' This allows it to work properly with Win95.
+'
+'******************************************************************************
+
+'********************************* HISTORY ************************************
+' Date DVE Comments
+' 3/01/94 Jack Morrison Initial version
+'******************************************************************************
+'
+'******************************************************************************
+'* Include Files
+'******************************************************************************
+
+'$INCLUDE 'DECLARES.INC'
+
+Const APPL_ABBR$ = "CTHON"
+
+'$INCLUDE 'NFSCOMM.INC'
+'$INCLUDE 'NFSSUBS.INC'
+
+'******************************************************************************
+' Subroutines and Functions Declarations
+'******************************************************************************
+
+Declare Sub CTHONTest12a ()
+Declare Sub CTHONTest12b ()
+Declare Sub CTHONTest12c ()
+
+Declare Sub CTHONTest03 ()
+Declare Sub CTHONTest04 ()
+Declare Sub CTHONTest05 ()
+Declare Sub CTHONTest06 ()
+Declare Sub CTHONTest07 ()
+Declare Sub CTHONTest09 ()
+
+'******************************************************************************
+'* Initialize Variables
+'******************************************************************************
+Const Failed = "err"
+Const Drives = 3
+'******************************************************************************
+'* Main prorgram code
+'******************************************************************************
+On Error Goto ErrorTrap
+
+QueSetSpeed 75
+
+Setup
+
+FOR C = 1 TO Drives
+
+rtn = Connect(NetHost(C), NetDrive(C), NetPath(C), "") 'user$ passwd$
+
+If rtn <> PASS Then EXIT FOR
+If EXISTS (NetDrive(C)+":\testlog.*") Then KILL NetDrive(C)+":\testlog.*"
+
+NEXT C
+
+If C >= Drives Then
+
+' *** Execute the tests
+
+CTHONTest12a
+
+Else
+ WriteLogFile "Drive Could Not Be Connected. Test Aborted !"
+ failure_Occurred = TRUE
+End If
+
+FOR D = 1 TO Drives
+
+rtn = Disconnect (NetDrive(D))
+
+NEXT D
+
+Cleanup
+CheckExit
+
+End
+
+'******************************************************************************
+'Subroutines
+'******************************************************************************
+
+'******************************************************************************
+'SUB CTHONTest12a
+'******************************************************************************
+Sub CTHONTest12a() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON Acceptance Test"+" "+DateTime$
+
+FOR I = 1 TO Drives
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+levels$ = "1"
+files$ = "1"
+dirs$ = "1"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON Acceptance Test In Progess", 0,0,0,0, TRUE, TRUE
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+CheckLog "testlog.12", Failed$, False
+NEXT I
+
+EndSubTest " CTHON Acceptance Test"+" "+DateTime$
+
+End Sub
+
diff --git a/basic/scripts/cthon01.mst b/basic/scripts/cthon01.mst
new file mode 100644
index 0000000..3883183
--- /dev/null
+++ b/basic/scripts/cthon01.mst
@@ -0,0 +1,436 @@
+'******************************* CTHON01.MST *********************************
+' @(#)cthon01.mst 1.1 98/10/26 Connectathon Testsuite
+'
+'Description: This test suite contains a set of test cases and scenarios that
+' are used to test Directory Caching.
+'
+'
+'
+'******************************************************************************
+
+'********************************* HISTORY ************************************
+' Date DVE Comments
+' 3/01/94 Jack Morrison Initial version
+'******************************************************************************
+
+'Test cases:
+'
+'******************************************************************************
+'* Include Files
+'******************************************************************************
+
+'$INCLUDE 'DECLARES.INC'
+
+Const APPL_ABBR$ = "CTHON"
+
+'$INCLUDE 'NFSCOMM.INC'
+'$INCLUDE 'NFSSUBS.INC'
+
+'******************************************************************************
+' Subroutines and Functions Declarations
+'******************************************************************************
+
+Declare Sub CthonTest12a ()
+Declare Sub CthonTest12b ()
+Declare Sub CthonTest12c ()
+
+Declare Sub CthonTest03 ()
+Declare Sub CthonTest04 ()
+Declare Sub CthonTest05 ()
+Declare Sub CthonTest06 ()
+Declare Sub CthonTest07 ()
+Declare Sub CthonTest09 ()
+
+'******************************************************************************
+'* Initialize Variables
+'******************************************************************************
+Global NumDrives AS INTEGER
+'******************************************************************************
+'* Main prorgram code
+'******************************************************************************
+On Error Goto ErrorTrap
+
+QueSetSpeed 75
+
+Setup
+
+ret = Connect (NetHost(1), NetDrive(1), NetPath(1), "") 'user$ passwd$
+ret = Connect (NetHost(2), NetDrive(2), NetPath(2), "") 'user$ passwd$
+ret = Connect (NetHost(3), NetDrive(3), NetPath(3), "") 'user$ passwd$
+
+' At some point set NumDrives% = MaxDrive% because the
+' way it is now it will run thru the same drive every time
+NumDrives% = MaxDrive%
+
+FOR I = 1 TO MaxDrive%
+ If EXISTS (NetDrive(I)+":\testlog.*") Then
+ KILL NetDrive(I)+":\testlog.*"
+ End If
+
+'*** Execute the tests
+
+CthonTest12a
+CthonTest12b
+CthonTest12c
+
+CthonTest03
+CthonTest04
+CthonTest05
+CthonTest06
+CthonTest07
+CthonTest09
+
+
+ret = Disconnect (NetDrive(1))
+ret = Disconnect (NetDrive(2))
+ret = Disconnect (NetDrive(3))
+
+NEXT I
+
+Cleanup
+
+End
+
+'******************************************************************************
+' Subroutines and Functions
+'******************************************************************************
+'******************************************************************************
+'Subroutines
+'******************************************************************************
+
+'******************************************************************************
+'SUB CthonTest12a
+'******************************************************************************
+Sub CthonTest12a() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+FOR L = 1 To 7
+
+levels$ = STR$(L)
+files$ = "1"
+dirs$ = "1"
+
+CHDRIVE NetDrive(I)
+
+If NOT EXISTS ("testdir.12") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test12.dir not deleted"
+End If
+
+NEXT L
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+'******************************************************************************
+'SUB CthonTest12b
+'******************************************************************************
+Sub CthonTest12b() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+levels$ = "1"
+files$ = "999"
+dirs$ = "1"
+
+CHDRIVE NetDrive(I)
+
+If NOT EXISTS ("testdir.12") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test12.dir not deleted"
+End If
+
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+
+'******************************************************************************
+'SUB CthonTest12c
+'******************************************************************************
+Sub CthonTest12c() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+levels$ = "4"
+files$ = "10"
+dirs$ = "5"
+
+CHDRIVE NetDrive(I)
+
+If NOT EXISTS ("testdir.12") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test12.dir not deleted"
+End If
+
+
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+'******************************************************************************
+'SUB CthonTest03
+'******************************************************************************
+Sub CthonTest03() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+CHDRIVE NetDrive(I)
+
+FOR C = 1 TO 1000 STEP 10
+
+count$ = STR$(C)
+
+If NOT EXISTS ("testdir.3") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test3 testdir.3 testlog.3 "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test3.dir not deleted"
+End If
+
+NEXT C
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+'******************************************************************************
+'SUB CthonTest04
+'******************************************************************************
+Sub CthonTest04() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+CHDRIVE NetDrive(I)
+
+FOR F = 1 TO 500 STEP 100
+
+files$ = STR$(F)
+count$ = "10"
+
+If NOT EXISTS ("testdir.4") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test4 testdir.4 testlog.4 "+files$+" "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test4.dir not deleted"
+End If
+
+NEXT F
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+
+'******************************************************************************
+'SUB CthonTest06
+'******************************************************************************
+Sub CthonTest06() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+CHDRIVE NetDrive(I)
+
+FOR F = 1 TO 512 STEP 256
+
+files$ = STR$(F)
+count$ = "1"
+
+If NOT EXISTS ("testdir.6") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test6 testdir.6 testlog.6 "+files$+" "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test6.dir not deleted"
+End If
+
+NEXT F
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+
+'******************************************************************************
+'SUB CthonTest09
+'******************************************************************************
+Sub CthonTest09() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+CHDRIVE NetDrive(I)
+
+FOR C = 1 TO 1000 STEP 10
+
+count$ = STR$(C)
+
+If NOT EXISTS ("testdir.9") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test9 testdir.9 testlog.9 "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test9.dir not deleted"
+End If
+
+NEXT C
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+
+'******************************************************************************
+'SUB CthonTest05
+'******************************************************************************
+Sub CthonTest05() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+CHDRIVE NetDrive(I)
+fname$ = ""
+
+FOR N = 1 TO 8 STEP 1
+fname$ = fname$+"x"
+
+FOR C = 1 TO 10 STEP 1
+count$ = STR$(C)
+
+FOR S = 512 TO 8192 STEP 512
+size$ = STR$(s)
+
+If NOT EXISTS ("testdir.5") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test5 testdir.5 testlog.5 "+size$+" "+count$+" "+fname$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test5.dir not deleted"
+End If
+
+NEXT S
+NEXT C
+NEXT N
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
+
+'******************************************************************************
+'SUB CthonTest07
+'******************************************************************************
+Sub CthonTest07() Static
+
+' initialize - open logs and start Cthon
+
+StartSubTest ""
+
+FOR I = 1 TO NumDrives%
+
+CHDRIVE NetDrive(I)
+sfname$ = ""
+
+FOR S = 1 TO 8
+sfname$ = sfname$ + "a"
+efname$ = ""
+
+FOR E = 1 TO 8
+efname$ = efname$ + "z"
+
+If NOT EXISTS ("testdir.7") Then
+
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test7 testdir.7 testlog.7 1 1 "+sfname$+" "+efname$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test7.dir not deleted"
+End If
+
+NEXT E
+NEXT S
+NEXT I
+
+EndSubTest ""
+
+End Sub
+
diff --git a/basic/scripts/cthon02.mst b/basic/scripts/cthon02.mst
new file mode 100644
index 0000000..6e54423
--- /dev/null
+++ b/basic/scripts/cthon02.mst
@@ -0,0 +1,469 @@
+'******************************* CTHON02.MST *********************************
+' @(#)cthon02.mst 1.1 98/10/26 Connectathon Testsuite
+'
+'Description: This test suite contains a set of test cases and scenarios that
+' are used to test Directory Caching. It is similar to CTHON01,
+' but the parameters used as not as large, so it creates less
+' stress and executes in much less time.
+'
+'******************************************************************************
+
+'********************************* HISTORY ************************************
+' Date DVE Comments
+' 3/01/94 Jack Morrison Initial version
+'******************************************************************************
+
+'Test cases:
+'
+'******************************************************************************
+'* Include Files
+'******************************************************************************
+
+'$INCLUDE 'DECLARES.INC'
+
+Const APPL_ABBR$ = "CTHON"
+
+'$INCLUDE 'NFSCOMM.INC'
+'$INCLUDE 'NFSSUBS.INC'
+
+'******************************************************************************
+' Subroutines and Functions Declarations
+'******************************************************************************
+
+Declare Sub CTHONTest12a ()
+Declare Sub CTHONTest12b ()
+Declare Sub CTHONTest12c ()
+
+Declare Sub CTHONTest03 ()
+Declare Sub CTHONTest04 ()
+Declare Sub CTHONTest05 ()
+Declare Sub CTHONTest06 ()
+Declare Sub CTHONTest07 ()
+Declare Sub CTHONTest09 ()
+
+'******************************************************************************
+'* Initialize Variables
+'******************************************************************************
+Const Failed = "err"
+'******************************************************************************
+'* Main prorgram code
+'******************************************************************************
+On Error Goto ErrorTrap
+
+QueSetSpeed 75
+
+Setup
+
+FOR C = 1 TO MaxDrive%
+
+rtn = Connect(NetHost(C), NetDrive(C), NetPath(C), "") 'user$ passwd$
+
+If rtn <> PASS Then EXIT FOR
+If EXISTS (NetDrive(C)+":\testlog.*") Then KILL NetDrive(C)+":\testlog.*"
+
+NEXT C
+
+If C >= Maxdrive% Then
+
+' *** Execute the tests
+
+CTHONTest12a
+CTHONTest12b
+CTHONTest12c
+
+CTHONTest03
+CTHONTest04
+CTHONTest05
+CTHONTest06
+CTHONTest07
+CTHONTest09
+
+Else
+ WriteLogFile "Drive Could Not Be Connected. Test Aborted !"
+ failure_Occurred = TRUE
+End If
+
+FOR D = 1 TO Maxdrive%
+
+rtn = Disconnect (NetDrive(D))
+
+NEXT D
+
+Cleanup
+CheckExit
+
+End
+
+'******************************************************************************
+' Subroutines and Functions
+'******************************************************************************
+'******************************************************************************
+'Subroutines
+'******************************************************************************
+
+'******************************************************************************
+'SUB CTHONTest12a
+'******************************************************************************
+Sub CTHONTest12a() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12A"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+FOR L = 1 To 1
+
+levels$ = STR$(L)
+files$ = "1"
+dirs$ = "1"
+
+CHDRIVE NetDrive(I)
+
+If NOT EXISTS ("testdir.12") Then
+
+STATUSBOX "CTHON02 SubTest 1a In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test1 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+STATUSBOX "CTHON02 SubTest 2a In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test2 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test12.dir not deleted"
+End If
+
+NEXT L
+NEXT I
+
+CheckLog "testlog.12", Failed$, False
+EndSubTest " CTHON SubTest12A"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest12b
+'******************************************************************************
+Sub CTHONTest12b() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12B"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+levels$ = "1"
+files$ = "1"
+dirs$ = "1"
+
+CHDRIVE NetDrive(I)
+
+If NOT EXISTS ("testdir.12") Then
+
+STATUSBOX "CTHON02 SubTest 1b In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test1 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+STATUSBOX "CTHON02 SubTest 2b In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test2 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test12.dir not deleted"
+End If
+
+NEXT I
+
+CheckLog "testlog.12", Failed$, False
+EndSubTest " CTHON SubTest12B"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest12c
+'******************************************************************************
+Sub CTHONTest12c() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12C"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+' CTHON01 => levels$ = "4"
+levels$ = "1"
+' CTHON01 => files$ = "10"
+files$ = "1"
+' CTHON01 => dirs$ = "5"
+dirs$ = "1"
+
+CHDRIVE NetDrive(I)
+
+If NOT EXISTS ("testdir.12") Then
+
+STATUSBOX "CTHON02 SubTest 1c In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test1 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+STATUSBOX "CTHON02 SubTest 2c In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test2 testdir.12 testlog.12 "+levels$+" "+files$+" "+dirs$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test12.dir not deleted"
+End If
+
+
+NEXT I
+
+CheckLog "testlog.12", Failed$, False
+EndSubTest " CTHON SubTest12C"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest03
+'******************************************************************************
+Sub CTHONTest03() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 3"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+
+' CTHON01 => FOR C = 1 TO 1000 STEP 10
+FOR C = 1 TO 10 STEP 10
+
+count$ = STR$(C)
+
+If NOT EXISTS ("testdir.3") Then
+
+STATUSBOX "CTHON02 SubTest 3 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test3 testdir.3 testlog.3 "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test3.dir not deleted"
+End If
+
+NEXT C
+NEXT I
+
+CheckLog "testlog.3", Failed$, False
+EndSubTest " CTHON SubTest 3"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest04
+'******************************************************************************
+Sub CTHONTest04() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 4"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+
+FOR F = 1 TO 100 STEP 100
+
+files$ = STR$(F)
+' CTHON01 => count$ = "10"
+count$ = "1"
+
+If NOT EXISTS ("testdir.4") Then
+
+STATUSBOX "CTHON02 SubTest 4 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test4 testdir.4 testlog.4 "+files$+" "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test4.dir not deleted"
+End If
+
+NEXT F
+NEXT I
+
+CheckLog "testlog.4", Failed$, False
+EndSubTest " CTHON SubTest 4"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest06
+'******************************************************************************
+Sub CTHONTest06() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 6"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+
+FOR F = 1 TO 256 STEP 256
+
+files$ = STR$(F)
+count$ = "1"
+
+If NOT EXISTS ("testdir.6") Then
+
+STATUSBOX "CTHON02 SubTest 6 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test6 testdir.6 testlog.6 "+files$+" "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test6.dir not deleted"
+End If
+
+NEXT F
+NEXT I
+
+CheckLog "testlog.6", Failed$, False
+EndSubTest " CTHON SubTest 6"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest09
+'******************************************************************************
+Sub CTHONTest09() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 9"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+
+' CTHON01 - FOR C = 1 TO 1000 STEP 10
+FOR C = 1 TO 100 STEP 100
+
+count$ = STR$(C)
+
+If NOT EXISTS ("testdir.9") Then
+
+STATUSBOX "CTHON02 SubTest 9 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test9 testdir.9 testlog.9 "+count$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test9.dir not deleted"
+End If
+
+NEXT C
+NEXT I
+
+CheckLog "testlog.9", Failed$, False
+EndSubTest " CTHON SubTest 9"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest05
+'******************************************************************************
+Sub CTHONTest05() Static
+
+' initialize - open logs and start CTHON (this is the longest test)
+
+StartSubTest " CTHON SubTest 5"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+fname$ = ""
+
+' CTHON01 => FOR N = 1 TO 4 STEP 1
+FOR N = 1 TO 1 STEP 1
+fname$ = fname$+"x"
+
+' CTHON01 => FOR C = 1 TO 10 STEP 1
+FOR C = 1 TO 1 STEP 1
+count$ = STR$(C)
+
+' CTHON01 => FOR S = 512 TO 8192 STEP 512
+FOR S = 1024 TO 1024 STEP 1024 ' 1024 > 5120 > 9216 > 13312
+size$ = STR$(s)
+
+If NOT EXISTS ("testdir.5") Then
+
+STATUSBOX "CTHON02 SubTest 5 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test5 testdir.5 testlog.5 "+size$+" "+count$+" "+fname$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test5.dir not deleted"
+End If
+
+NEXT S
+NEXT C
+NEXT N
+NEXT I
+
+CheckLog "testlog.5", Failed$, False
+EndSubTest " CTHON SubTest 5"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest07
+'******************************************************************************
+Sub CTHONTest07() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 7"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+sfname$ = ""
+
+FOR S = 1 TO 2
+sfname$ = sfname$ + "a"
+efname$ = ""
+
+FOR E = 2 TO 2
+efname$ = efname$ + "z"
+
+If NOT EXISTS ("testdir.7") Then
+
+STATUSBOX "CTHON02 SubTest 7 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"test7 testdir.7 testlog.7 1 1 "+sfname$+" "+efname$
+Run Execute$, ,SW_HIDE
+
+Else
+failure_Occurred = True
+WriteLogFile "Previous test directory test7.dir not deleted"
+End If
+
+NEXT E
+NEXT S
+NEXT I
+
+CheckLog "testlog.7", Failed$, False
+EndSubTest " CTHON SubTest 7"+" "+DateTime$
+
+End Sub
+
diff --git a/basic/scripts/cthon03.mst b/basic/scripts/cthon03.mst
new file mode 100644
index 0000000..f020688
--- /dev/null
+++ b/basic/scripts/cthon03.mst
@@ -0,0 +1,428 @@
+'******************************* CTHON03.MST *********************************
+' @(#)cthon03.mst 1.1 98/10/26 Connectathon Testsuite
+'
+'Description: This test suite contains a set of test cases and scenarios that
+' are used to test Directory Caching. It is the same as CTHON01,
+' except that it uses the MS-Test SHELL command instead of RUN.
+' This allows it to work properly with Win95.
+'
+'******************************************************************************
+
+'********************************* HISTORY ************************************
+' Date DVE Comments
+' 3/01/94 Jack Morrison Initial version
+'******************************************************************************
+'
+'******************************************************************************
+'* Include Files
+'******************************************************************************
+
+'$INCLUDE 'DECLARES.INC'
+
+Const APPL_ABBR$ = "CTHON"
+
+'$INCLUDE 'NFSCOMM.INC'
+'$INCLUDE 'NFSSUBS.INC'
+
+'******************************************************************************
+' Subroutines and Functions Declarations
+'******************************************************************************
+
+Declare Sub CTHONTest12a ()
+Declare Sub CTHONTest12b ()
+Declare Sub CTHONTest12c ()
+
+Declare Sub CTHONTest03 ()
+Declare Sub CTHONTest04 ()
+Declare Sub CTHONTest05 ()
+Declare Sub CTHONTest06 ()
+Declare Sub CTHONTest07 ()
+Declare Sub CTHONTest09 ()
+
+'******************************************************************************
+'* Initialize Variables
+'******************************************************************************
+Const Failed = "err"
+'******************************************************************************
+'* Main prorgram code
+'******************************************************************************
+On Error Goto ErrorTrap
+
+QueSetSpeed 75
+
+Setup
+
+FOR C = 1 TO MaxDrive%
+
+rtn = Connect(NetHost(C), NetDrive(C), NetPath(C), "") 'user$ passwd$
+
+If rtn <> PASS Then EXIT FOR
+If EXISTS (NetDrive(C)+":\testlog.*") Then KILL NetDrive(C)+":\testlog.*"
+
+NEXT C
+
+If C >= Maxdrive% Then
+
+' *** Execute the tests
+
+CTHONTest12a
+CTHONTest12b
+CTHONTest12c
+
+CTHONTest03
+CTHONTest04
+CTHONTest05
+CTHONTest06
+CTHONTest07
+CTHONTest09
+
+Else
+ WriteLogFile "Drive Could Not Be Connected. Test Aborted !"
+ failure_Occurred = TRUE
+End If
+
+FOR D = 1 TO Maxdrive%
+
+rtn = Disconnect (NetDrive(D))
+
+NEXT D
+
+Cleanup
+CheckExit
+
+End
+
+'******************************************************************************
+'Subroutines
+'******************************************************************************
+
+'******************************************************************************
+'SUB CTHONTest12a
+'******************************************************************************
+Sub CTHONTest12a() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12A"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+FOR L = 1 To 7
+
+levels$ = STR$(L)
+files$ = "1"
+dirs$ = "1"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 1a In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+STATUSBOX "CTHON03 SubTest 2a In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+NEXT L
+CheckLog "testlog.12", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest12A"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest12b
+'******************************************************************************
+Sub CTHONTest12b() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12B"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+levels$ = "1"
+files$ = "999"
+dirs$ = "1"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 1b In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+STATUSBOX "CTHON03 SubTest 2b In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+CheckLog "testlog.12", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest12B"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest12c
+'******************************************************************************
+Sub CTHONTest12c() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12C"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+levels$ = "4"
+files$ = "10"
+dirs$ = "5"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 1c In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+STATUSBOX "CTHON03 SubTest 2c In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+CheckLog "testlog.12", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest12C"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest03
+'******************************************************************************
+Sub CTHONTest03() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 3"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.3"
+CreateDir$ = ""
+
+FOR C = 1 TO 1000 STEP 10
+
+count$ = STR$(C)
+
+If EXISTS ("testdir.3","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 3 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test3 testdir.3 testlog.3 "+CreateDir$+" "+count$
+SHELL Execute$
+
+NEXT C
+CheckLog "testlog.3", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest 3"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest04
+'******************************************************************************
+Sub CTHONTest04() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 4"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.4"
+CreateDir$ = ""
+
+FOR F = 1 TO 500 STEP 100
+
+files$ = STR$(F)
+count$ = "10"
+
+If EXISTS ("testdir.4","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 4 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test4 testdir.4 testlog.4 "+CreateDir$+" "+files$+" "+count$
+SHELL Execute$
+
+NEXT F
+CheckLog "testlog.4", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest 4"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest06
+'******************************************************************************
+Sub CTHONTest06() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 6"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.6"
+CreateDir$ = ""
+
+FOR F = 1 TO 512 STEP 256
+
+files$ = STR$(F)
+count$ = "1"
+
+If EXISTS ("testdir.6","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 6 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test6 testdir.6 testlog.6 "+CreateDir$+" "+files$+" "+count$
+SHELL Execute$
+
+NEXT F
+CheckLog "testlog.6", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest 6"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest09
+'******************************************************************************
+Sub CTHONTest09() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 9"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.9"
+CreateDir$ = ""
+
+FOR C = 1 TO 1000 STEP 10
+
+count$ = STR$(C)
+
+If EXISTS ("testdir.9","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 9 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test9 testdir.9 testlog.9 "+CreateDir$+" "+count$
+SHELL Execute$
+
+NEXT C
+CheckLog "testlog.9", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest 9"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest05
+'******************************************************************************
+Sub CTHONTest05() Static
+
+' initialize - open logs and start CTHON (this is the longest test)
+
+StartSubTest " CTHON SubTest 5"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.5"
+CreateDir$ = ""
+fname$ = ""
+
+FOR N = 1 TO 8 STEP 1
+fname$ = fname$+"x"
+
+FOR C = 1 TO 10 STEP 1
+count$ = STR$(C)
+
+FOR S = 512 TO 8192 STEP 512
+size$ = STR$(s)
+
+If EXISTS ("testdir.5","+d") Then CreateDir$ = "-n"
+
+
+STATUSBOX "CTHON03 SubTest 5 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test5 testdir.5 testlog.5 "+CreateDir$+" "+size$+" "+count$+" "+fname$
+SHELL Execute$
+
+NEXT S
+NEXT C
+NEXT N
+CheckLog "testlog.5", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest 5"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest07
+'******************************************************************************
+Sub CTHONTest07() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 7"+" "+DateTime$
+
+FOR I = 1 TO MaxDrive%
+
+CHDRIVE NetDrive(I)
+SHELL "deltree /y *.7"
+CreateDir$ = ""
+sfname$ = ""
+
+FOR S = 1 TO 8
+sfname$ = sfname$ + "a"
+efname$ = ""
+
+FOR E = 1 TO 8
+efname$ = efname$ + "z"
+
+If EXISTS ("testdir.7","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON03 SubTest 7 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test7 testdir.7 testlog.7 "+CreateDir$+" 1 1 "+sfname$+" "+efname$
+SHELL Execute$
+
+NEXT E
+NEXT S
+CheckLog "testlog.7", Failed$, False
+NEXT I
+
+EndSubTest " CTHON SubTest 7"+" "+DateTime$
+
+End Sub
+
diff --git a/basic/scripts/cthon04.mst b/basic/scripts/cthon04.mst
new file mode 100644
index 0000000..b5f5542
--- /dev/null
+++ b/basic/scripts/cthon04.mst
@@ -0,0 +1,366 @@
+'******************************* CTHON04.MST *********************************
+' @(#)cthon04.mst 1.1 98/10/26 Connectathon Testsuite
+'
+'Description: This test suite contains a set of test cases and scenarios that
+' are used to test Directory Caching. It is similar to CTHON02,
+' but it only runs on 1 drive and the parameters used are not as
+' large, so it creates less stress and executes in much less time.
+' It also uses the MS-Test SHELL command instead of RUN, which
+' allows it to work properly with Win95 (usually).
+'
+'******************************************************************************
+
+'********************************* HISTORY ************************************
+' Date DVE Comments
+' 3/01/94 Jack Morrison Initial version
+'******************************************************************************
+'
+'******************************************************************************
+'* Include Files
+'******************************************************************************
+
+'$INCLUDE 'DECLARES.INC'
+
+Const APPL_ABBR$ = "CTHON"
+
+'$INCLUDE 'NFSCOMM.INC'
+'$INCLUDE 'NFSSUBS.INC'
+
+'******************************************************************************
+' Subroutines and Functions Declarations
+'******************************************************************************
+
+Declare Sub CTHONTest12a ()
+Declare Sub CTHONTest12b ()
+Declare Sub CTHONTest12c ()
+
+Declare Sub CTHONTest03 ()
+Declare Sub CTHONTest04 ()
+Declare Sub CTHONTest05 ()
+Declare Sub CTHONTest06 ()
+Declare Sub CTHONTest07 ()
+Declare Sub CTHONTest09 ()
+
+'******************************************************************************
+'* Initialize Variables
+'******************************************************************************
+Const Failed = "err"
+'******************************************************************************
+'* Main prorgram code
+'******************************************************************************
+On Error Goto ErrorTrap
+
+QueSetSpeed 75
+
+Setup
+
+rtn = Connect(NetHost(1), NetDrive(1), NetPath(1), "") 'user$ passwd$
+If rtn = PASS Then
+
+If EXISTS (NetDrive(1)+":\testlog.*") Then KILL NetDrive(1)+":\testlog.*"
+
+CTHONTest12a
+CTHONTest12b
+CTHONTest12c
+CTHONTest03
+CTHONTest04
+CTHONTest05
+CTHONTest06
+CTHONTest07
+CTHONTest09
+
+rtn = Disconnect (NetDrive(1))
+
+Else
+ WriteLogFile "Could Not Connect Drive "+NetDrive(1)+" to "+NetHost(1)+" "+NetPath(1)
+ failure_Occurred = TRUE
+End If
+
+Cleanup
+CheckExit
+
+End
+
+'******************************************************************************
+'Subroutines
+'******************************************************************************
+
+'******************************************************************************
+'SUB CTHONTest12a
+'******************************************************************************
+Sub CTHONTest12a() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12A"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+levels$ = "1"
+files$ = "1"
+dirs$ = "1"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 1a In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+STATUSBOX "CTHON04 SubTest 2a In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+CheckLog "testlog.12", Failed$, False
+EndSubTest " CTHON SubTest12A"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest12b
+'******************************************************************************
+Sub CTHONTest12b() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12B"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+levels$ = "1"
+files$ = "1"
+dirs$ = "1"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 1b In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+STATUSBOX "CTHON04 SubTest 2b In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+CheckLog "testlog.12", Failed$, False
+EndSubTest " CTHON SubTest12B"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest12c
+'******************************************************************************
+Sub CTHONTest12c() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest12C"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.12"
+CreateDir$ = ""
+
+levels$ = "1"
+files$ = "1"
+dirs$ = "1"
+
+If EXISTS ("testdir.12","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 1c In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test1 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+STATUSBOX "CTHON04 SubTest 2c In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test2 testdir.12 testlog.12 "+CreateDir$+" "+levels$+" "+files$+" "+dirs$
+SHELL Execute$
+
+CheckLog "testlog.12", Failed$, False
+EndSubTest " CTHON SubTest12C"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest03
+'******************************************************************************
+Sub CTHONTest03() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 3"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.3"
+CreateDir$ = ""
+
+count$ = "1"
+
+If EXISTS ("testdir.3","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 3 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test3 testdir.3 testlog.3 "+CreateDir$+" "+count$
+SHELL Execute$
+
+CheckLog "testlog.3", Failed$, False
+EndSubTest " CTHON SubTest 3"+" "+DateTime$
+
+End Sub
+
+'******************************************************************************
+'SUB CTHONTest04
+'******************************************************************************
+Sub CTHONTest04() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 4"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.4"
+CreateDir$ = ""
+
+files$ = "1"
+count$ = "10"
+
+If EXISTS ("testdir.4","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 4 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test4 testdir.4 testlog.4 "+CreateDir$+" "+files$+" "+count$
+SHELL Execute$
+
+CheckLog "testlog.4", Failed$, False
+EndSubTest " CTHON SubTest 4"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest06
+'******************************************************************************
+Sub CTHONTest06() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 6"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.6"
+CreateDir$ = ""
+
+F = 512
+files$ = "1"
+count$ = "1"
+
+If EXISTS ("testdir.6","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 6 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test6 testdir.6 testlog.6 "+CreateDir$+" "+files$+" "+count$
+SHELL Execute$
+
+CheckLog "testlog.6", Failed$, False
+EndSubTest " CTHON SubTest 6"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest09
+'******************************************************************************
+Sub CTHONTest09() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 9"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.9"
+CreateDir$ = ""
+
+count$ = "1"
+
+If EXISTS ("testdir.9","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 9 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test9 testdir.9 testlog.9 "+CreateDir$+" "+count$
+SHELL Execute$
+
+CheckLog "testlog.9", Failed$, False
+EndSubTest " CTHON SubTest 9"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest05
+'******************************************************************************
+Sub CTHONTest05() Static
+
+' initialize - open logs and start CTHON (this is the longest test)
+
+StartSubTest " CTHON SubTest 5"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.5"
+CreateDir$ = ""
+fname$ = ""
+
+FOR N = 1 TO 2 STEP 1
+fname$ = fname$+"x"
+
+FOR C = 1 TO 2 STEP 1
+count$ = STR$(C)
+
+size$ = "512"
+
+If EXISTS ("testdir.5","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 5 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test5 testdir.5 testlog.5 "+CreateDir$+" "+size$+" "+count$+" "+fname$
+SHELL Execute$
+
+NEXT C
+NEXT N
+
+CheckLog "testlog.5", Failed$, False
+EndSubTest " CTHON SubTest 5"+" "+DateTime$
+
+End Sub
+
+
+'******************************************************************************
+'SUB CTHONTest07
+'******************************************************************************
+Sub CTHONTest07() Static
+
+' initialize - open logs and start CTHON
+
+StartSubTest " CTHON SubTest 7"+" "+DateTime$
+
+CHDRIVE NetDrive(1)
+SHELL "deltree /y *.7"
+CreateDir$ = ""
+sfname$ = ""
+
+FOR S = 1 TO 2
+sfname$ = sfname$ + "a"
+efname$ = ""
+
+FOR E = 1 TO 2
+efname$ = efname$ + "z"
+
+If EXISTS ("testdir.7","+d") Then CreateDir$ = "-n"
+
+STATUSBOX "CTHON04 SubTest 7 In Progess", 0,0,0,0, TRUE, TRUE
+Execute$ = ProgramPath$+"cthon.bat "+ProgramPath$+" test7 testdir.7 testlog.7 "+CreateDir$+" 1 1 "+sfname$+" "+efname$
+SHELL Execute$
+
+NEXT E
+NEXT S
+
+CheckLog "testlog.7", Failed$, False
+EndSubTest " CTHON SubTest 7"+" "+DateTime$
+
+End Sub
+
diff --git a/basic/scripts/runcthon.prl b/basic/scripts/runcthon.prl
new file mode 100644
index 0000000..80975a8
--- /dev/null
+++ b/basic/scripts/runcthon.prl
@@ -0,0 +1,66 @@
+# @(#)runcthon.prl 1.1 98/10/26 Connectathon Testsuite
+
+print "Run CONNECTATHON Tests\n";
+
+$count = $ARGV[0];
+
+&initpwd;
+
+chdir($ENV{'PWD'});
+
+$path = ($ENV{'PWD'});
+print $path;
+print "\n";
+
+for ($i = 1; $i <= $count; $i++) {
+
+$winpath = ($path . "\\win32\\basic");
+print "\n$i $winpath\n";
+chdir $winpath;
+system "perl runbasic.prl";
+chdir($ENV{'PWD'});
+
+$dospath = ($path . "\\dos\\basic");
+print "\n$i $dospath\n";
+chdir $dospath;
+system "perl runbasic.prl";
+chdir($ENV{'PWD'});
+
+$pospath = ($path . "\\posix\\basic");
+print "\n$i $pospath\n";
+chdir $pospath;
+#system "perl runbasic.prl";
+chdir($ENV{'PWD'});
+
+$dospath = ($path . "\\dos\\special");
+print "\n$i $dospath\n";
+chdir $dospath;
+system "runtests.bat";
+chdir($ENV{'PWD'});
+
+}
+
+exit 0;
+
+
+
+sub initpwd {
+ if ($ENV{'PWD'}) {
+ local($dd,$di) = stat('.');
+ local($pd,$pi) = stat($ENV{'PWD'});
+ if ($di != $pi || $dd != $pd) {
+ chop($ENV{'PWD'} = `cd`);
+ }
+ }
+ else {
+ chop($ENV{'PWD'} = `cd`);
+ }
+ if ($ENV{'PWD'} =~ m|(/[^/]+(/[^/]+/[^/]+))(.*)|) {
+ local($pd,$pi) = stat($2);
+ local($dd,$di) = stat($1);
+ if ($di == $pi && $dd == $pd) {
+ $ENV{'PWD'}="$2$3";
+ }
+ }
+# print "$ENV{'PWD'}\n";
+}