104 lines
3.1 KiB
Plaintext
104 lines
3.1 KiB
Plaintext
;; Function To Be Tested: ? (help) (EXEC Command)
|
|
;;
|
|
;; Source: Xerox Common Lisp Implementation Notes (Lyric Beta Release)
|
|
;; Section 20.2 (The Evaluator), Page 27
|
|
;;
|
|
;; Section: The Evaluator
|
|
;;
|
|
;;
|
|
;; Created By: John Park
|
|
;;
|
|
;; Creation Date: Feb 9, 1987
|
|
;;
|
|
;; Last Update: Feb 26, 1987
|
|
;;
|
|
;; Filed As: {ERIS}<lispcore>test>exec>help.u
|
|
;;
|
|
;;
|
|
;; Syntax: ? &OPTIONAL NAME
|
|
;;
|
|
;; Function Description: If NAME is not provided describes all available exec
|
|
;; commands by printing the name, argument list and description of each. With
|
|
;; NAME, only that command is described
|
|
;;
|
|
;; Argument(s): NAME (optional)
|
|
;; [REDO RETRY USE ? ?? CONN DA DIR DO-EVENTS FIX FORGET NAME NDIR
|
|
;; . PL REMEMBER SHH UNDO PP SEE SEE* TIME TY TYPE]
|
|
;;
|
|
;; Returns: Description of specified NAME
|
|
;;
|
|
;; Constraints/Limitations: Due to the nature of Programmer's Assistant commands,
|
|
;; testing them willbe accomplished by using the interlisp function bksysbuf
|
|
;; in do-test form. Displaying the entire ? list will be verified by user manually
|
|
;; Comments are incorporated within each command file.
|
|
;; The do-test test setup is titled "HELP-TEST-SETUP", which executes the command
|
|
;; string. The do-test form within the command file will return T or "test "quote"
|
|
;; failed in file "unknown". " This test file requires TEDIT package.
|
|
;; The test result will be logged automatically in the following file:
|
|
;; {ERIS}<lispcore>test>exec>test.report
|
|
|
|
|
|
(DO-TEST "HELP-TEST-SETUP"
|
|
(PROGN
|
|
(IL:PAGEHEIGHT 0)
|
|
(SETQ TEST-RESULT "{ERIS}<LISPCORE>TEST>EXEC>TEST.REPORT")
|
|
(DEFUN R-FORMAT (STATUS)
|
|
(FORMAT *OUTPUT* "~%COMMAND: HELP ~%STATUS: ~A DATE: ~A TESTER: ~A~%" STATUS (IL:DATE) IL:USERNAME))
|
|
(SETQ {CORE}SEE "{CORE}SEE" {CORE}REDO "{CORE}REDO")
|
|
(SETQ HELP-COMMAND-STRING
|
|
";;Entering ? should list and describe all available exec commands as listed above
|
|
?
|
|
;;Entering ? SEE should only describe the SEE command
|
|
(DRIBBLE '{CORE}SEE)
|
|
? SEE
|
|
(DRIBBLE)
|
|
;;Entering ? REDO should only describe the REDO command
|
|
(DRIBBLE '{CORE}REDO)
|
|
? REDO
|
|
(DRIBBLE)
|
|
|
|
; The following determine if {core}see contains the keyword SEE
|
|
(SETQ SEE-FILE (OPEN {CORE}SEE))
|
|
(SETQ SEE-KEYWORD-FLG NIL)
|
|
(READ-LINE SEE-FILE)
|
|
(READ-LINE SEE-FILE)
|
|
(DO ((I 0 (1+ I)))
|
|
((EQ (READ SEE-FILE NIL 'EOF) 'EOF) T)
|
|
(IF (EQ (READ SEE-FILE NIL 'EOF) 'SEE)
|
|
(PUSH T SEE-KEYWORD-FLG)
|
|
(PUSH NIL SEE-KEYWORD-FLG)))
|
|
(CLOSE SEE-FILE)
|
|
; The following determine if {core}see contains the keyword REDO
|
|
(SETQ REDO-FILE (OPEN {CORE}REDO))
|
|
(SETQ REDO-KEYWORD-FLG NIL)
|
|
(READ-LINE REDO-FILE)
|
|
(READ-LINE REDO-FILE)
|
|
(DO ((I 0 (1+ I)))
|
|
((EQ (READ REDO-FILE NIL 'EOF) 'EOF) T)
|
|
(IF (EQ (READ REDO-FILE NIL 'EOF) 'REDO)
|
|
(PUSH T REDO-KEYWORD-FLG)
|
|
(PUSH NIL REDO-KEYWORD-FLG)))
|
|
(CLOSE REDO-FILE)
|
|
(DO-TEST 'FIND-EVENT-TEST-RESULT
|
|
(PROG2 (SETQ *OUTPUT* (OPEN TEST-RESULT :DIRECTION :OUTPUT
|
|
:IF-EXISTS :APPEND))
|
|
(IF (AND (NOTEVERY #'NULL SEE-KEYWORD-FLG)
|
|
(NOTEVERY #'NULL REDO-KEYWORD-FLG))
|
|
(PROGN (R-FORMAT 'SUCCESS) T)
|
|
(PROGN (R-FORMAT 'FAIL) NIL))
|
|
(CLOSE *OUTPUT*)
|
|
)
|
|
)
|
|
|
|
|
|
")
|
|
(IL:BKSYSBUF HELP-COMMAND-STRING)
|
|
)
|
|
)
|
|
|
|
|
|
STOP
|
|
|
|
|
|
|