Design: 05.02/P08

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 8: Categories of picture change

CHARACTERISTICS: ynnn

OPERATOR SCRIPT: passive test.

DESIGN:

picture change categories are numbered from 1 to 17:
  workstation changes :  1 to 12
  structure changes   : 13 to 17

set pcctab to names of picture change categories

<set display update state> WAIT, UQUM

valcat = true = valid category
<inquire dynamics of workstation attr> to determine
   pcsev(1 to 12) = picture change severity

ng = an invalid code for picture change
for iwk = 1 to 12
   if (pcsev(iwk) invalid or error reported from inquire) then
      valcat = false
      pcsev(iwk) = ng
   endif
next iwk

TEST: #SR 6
      "<Inquire dynamics of workstation attributes> should report
       the modification severity for the 12 kinds of workstation
       changes as IMM,IRG,CBS."
pass/fail depending on (valcat)

valcat = true = valid category
<inquire dynamics of struc> to determine
   pcsev(13 to 17) = picture change severity

for istr = 13 to 17
   if (pcsev(istr) invalid or error reported from inquire) then
      valcat = false
      pcsev(istr) = ng
   endif
next istr

TEST: #SR 7
      "<Inquire dynamics of structures> should report the
       modification severity for the 5 kinds of structure changes
       as IMM,IRG,CBS."
pass/fail depending on (valcat)

expected svr values:
expsvr(IRG) = DEFERRED
expsvr(CBS) = SIMULATED
expsvr(IMM) = CORRECT

severity label:
sevlbl(IRG) = "IRG"
sevlbl(CBS) = "CBS"
sevlbl(IMM) = "IMM"

svr label:
svrlbl(DEFERRED)  = "DEFERRED"
svrlbl(SIMULATED) = "SIMULATED"
svrlbl(CORRECT)   = "CORRECT"

invoke PICENV to set up standard picture environment

for each pcc = 1 to 17 = picture change category
   repsev = pcsev(pcc)
   if (repsev = ng) then goto end_pcc

   svrlst = calculate list of expected SVRs, based on
            sevrty, defmod, modmd, and oldsvr
   svrmsg = string for svrlst

   <redraw all structures> to make svr CORRECT
   invoke PICCHG to generate an example of pcc
   if (change not performed) goto end_pcc
   pccmsg = pcctab (pcc)
   sevmsg = sevlbl (repsev)
   TEST: #SR 6 7 13 14 15 16 19 20 21 24 26 28
         "Picture change category " + pccmsg + " reported as
          having severity = " + sevmsg + " should set state of
          visual representation to " + svrmsg + "."
   pass/fail depending on (current_SVR contained in svrlst)
end_pcc:
next pcc

END PROGRAM 8