$! $!This test presumes the use of VMS V 7.1 or later (it makes use of the PIPE verb). $!It presupposes that the P4USER invoking it will have at least a few clients $!set up and that searching through the output of "perf clients" will turn up $!something non-trivial for comparing an old client with a new one. $! $!1. "Porting changes for OutputInfo and OutputError. $! $!VMS likes a different order for the fwrite length-of-object and $!number-of-objects. Get the wrong order and the output is 1 character $!a line." $! $ pid = f$getjpi("","PID") $ P4USER = f$trnlnm("P4USER") $ if P4USER .nes. "" $ then $ pipe perforce clients | search sys$pipe 'P4USER' > perforce_clients_'pid'.out $ pipe newperf clients | search sys$pipe 'P4USER' > newperf_clients_'pid'.out $ differences /output=nl: perforce_clients_'pid'.out newperf_clients_'pid'.out $ if $status .ne. %X006C8009 $ then write sys$output "not ok 1" $ else write sys$output "ok 1" $ endif $ delete/nolog/noconfirm perforce_clients_'pid'.out; $ delete/nolog/noconfirm newperf_clients_'pid'.out; $ else $ write sys$error "The P4USER logical name is not defined. This test cannot proceed." $ exit 44 $ endif
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 5686 | peter_prymmer |
VMS DCL procedures to reveal several bugs in (at least) the 2002.2 release of the p4.exe client program for VMS including: 1) use of "p4" as a foreign command global symbol is not recommended (these tests use "perforce" and "newperf") 2) the inability to deal with RMS versioning (demonstrated by the revert_deletion.com test) 3) the inability to recognize uppercase parameters and switches (demonstrated by the dash_v.com test) 4) a regression in dealing with a return() of a bad $STATUS to the command level when P4PORT is incorrectly set and you issue "perf info" (info_status.com test) I recommend reading the readme and modifying p4_setup.com and revert_deletion.com before trying to use these procedures. |