Design: 09.01.02.02/P03

This is an abstract, language-independent design. Grim details may be found in the corresponding source code. You may return to the documentation for the module containing this program design, or to the entire hierarchical table of topics covered by the PVT.


PROGRAM 3: Error 54 handled by system

CHARACTERISTICS: ynny

OPERATOR SCRIPT:
See OPERATOR SCRIPT for Program 1.

DESIGN:

Throughout this program, every time an error is signalled, the system-defined
error handler should call <error logging> to write in error message on
the error file.

Also, throughout this program, this is what is meant by
   "operator verifies error nmessage":
display next error message in error file to operator
OPQA/according to the error message, which function generated the error?
if (operator response = expected function) then
   OPQA/if error message identifies error code, enter it, else "n"
   if (operator response = "n") then
      display standard error wording(s) to operator
      OPQA/does error meaage match standard wording?
      pass/fail depending on (operator response = yes)
   else
      pass/fail depending on (operator response = expected code)
   endif
else
   fail
   informative message on missing/incorrect function
endif

Not open workstation with workstation identifier wkid to test if
functions 3,4,5,64,67,68,73,83,85,112 with workstation identifier wkid
generate error 54: ignoring function, the specified workstation is not open.
Then open workstation with wkid to test if function 4,6,67,87,111 with
workstation identifier wkid+1 generate error 54.

*** *** ***  Generate errors; test absence of side effects  *** *** ***

wkid = workstation identifier
<close workstation> with wkid: signals error
TEST: #SR 4
      "If <close workstation> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = closed)

<redraw all structures> with wkid, PALWAY: signals error
TEST: #SR 4
      "If <redraw all structures> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = closed)

<update workstation> with wkid, PPERFO: signals error
TEST: #SR 4
      "If <update workstation> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = closed)

<set text representation> with wkid,1,1,PSTRP,1.0,0.1,1: signals error
TEST: #SR 4
      "If <set text representation> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = closed)

colia(1,1) = pattern colour index array
colia = {1, 1}
<set pattern representation> with wkid,1,1,1,1,1,1,1,colia: signals error

cspec = colour specification
cspec = {1.,0.,0.,0.,0.,1.}
<set colour representation> with wkid, 1, 6, cspec: signals error
<set hlhsr mode> with wkid, 0: signals error

vwormt = view orientation matrix
set vwormt(4,4) to identity matrix
vwmpmt = view mapping matrix
set vwmpmp(4,4) to identity matrix
vwcplm = view clipping limit
set vwcplm(6) to {0.,1.,0.,1.,0.,1.}
xyclpi = x-y clipping indicator
set xyclpi to  clipping
bclipi = back clipping indicator
set bclipi to clipping
fclipi = front clipping indicator
set fclipi to clipping
<set view representation 3> with wkid, 1, vwormt, vwmpmt, vwcplm, xyclpi,
                                 bclipi, fclipi: signals error
<set view transformation input priority> with wkid, 1, 1, higher: signals error
<open structure> 101
<unpost structure> with wkid, 101: signals error
TEST: #SR 4
      "If <unpost structure> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = closed and
                        structure state = open)
<close structure>

<open workstation> with wkid, conid, wtype
<redraw all structures> with wkid+1: signals error
TEST: #SR 4
      "If <redraw all structures> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = open)

<set display update state> with wkid+1: signals error
<set pattern representation> with wkid+1,1,1,1,1,1,1,1,colia: signals error
<set workstation window> with wkid+1,0.,1.,0.,1.: signals error
TEST: #SR 4
      "If <set workstation window> signals an error because the specified
       workstation is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = open)
<open structure> 101
<post structure> with wkid+1: signals error
TEST: #SR 4
      "If <post structure> signals an error because the specified workstation
       is not open, it should not cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        workstation state = open)
<close structure>
<close workstation> wkid

*** *** ***  Results of system-defined error handling  *** *** ***

TEST: #SR 4
      "If <close workstation> is called and the specified workstation is not
       open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <redraw all structures> is called and the specified workstation
       is not open, it should write an accurate, self-identifying
       error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <update workstation> is called and the specified workstation is not
       open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set text representation> is called and the specified workstation is
       not open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set pattern representation> is called and the specified
       workstation is not open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set colour representation> is called and the specified workstation
       is not open, it should write an accurate, self-identifying
       error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set hlhsr mode> is called and the specified workstation is
       not open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set view representation 3> is called and the specified workstation
       is not open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set view transformation input priority> is called and the specified
       workstation is not open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <unpost structure> is called and the specified workstation is not
       open, it should write an accurate, self-identifying error message
       on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <redraw all structures> is called and the specified workstation
       is not open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set display update state> is called and the specified workstation
       is not open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set pattern representation> is called and the specified
       workstation is not open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <set workstation window> is called and the specified workstation
       is not open, it should write an accurate, self-identifying error
       message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 4
      "If <post structure> is called and the specified workstation is not
       open, it should write an accurate, self-identifying error message
       on the error file."
pass/fail depending on (operator verifies error message)

END PROGRAM 3