Design: 09.01.01.02/P07

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 7: Error 7 handled by system

CHARACTERISTICS: nnny

OPERATOR SCRIPT:
See OPERATOR SCRIPT for Program 1.

DESIGN:

Throughout this program, every time an error is signalled (as noted by
the tag "signals error"), the system-defined error handler should call
<error logging> at least once to write an error message on the error file.

Not open archive file after initializing to test if function
115,116, 120,121,123,124,126 generates error 7 and/or 404:
ignoring function, function requires state (PHOP, *, *, AROP).

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

arid = 11
stid = 101
stlist = (101, 102)
pathod = TOPFIRST
pathdp = 1
<close archive file> arid : signals error
TEST: #SR 7
      "If <close archive file> signals an error because PHIGS is
       open but no archive file is open, it should not cause any
       other effect."
pass/fail depending on (system state = PHIGS-open and
                        archive state = closed)

<archive structures> arid, stlist : signals error
TEST: #SR 7
      "If <archive structures> signals an error because PHIGS is
       open but no archive file is open, it should not cause any
       other effect."
pass/fail depending on (system state = PHIGS-open and
                        archive state = closed)

<retrieve structure identifiers> with arid, stlist : signals error

<retrieve structures> with arid, stlist : signals error

<retrieve all structures> with arid : signals error
TEST: #SR 7
      "If <retrieve all structures> signals an error because PHIGS
       is open but no archive file is open, it should not cause
       any other effect."
pass/fail depending on (system state = PHIGS-open and
                        archive state = closed)

<retrieve paths to ancestors> wit arid, stid, pathod, pathdp,
   reppth : signals error
TEST: #SR 7
      "If <retrieve paths to ancestors> signals an error because
       PHIGS is open but no archive file is open, it should not
       cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        archive state = closed)

<delete structures from archive> with arid, stlist : signals error
TEST: #SR 7
      "If <delete structures from archive> signals an error because
       PHIGS is open but no archive file is open, it should not
       cause any other effect."
pass/fail depending on (system state = PHIGS-open and
                        archive state = closed)

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

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

TEST: #SR 7
      "If <archive structures> is called and PHIGS is open but no
       archive file is open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 7
      "If <retrieve structure identifiers> is called and PHIGS is open
       but no archive file is open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 7
      "If <retrieve structures> is called and PHIGS is open but no
       archive file is open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 7
      "If <retrieve all structures> is called and PHIGS is open but
       no archive file is open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 7
      "If <retrieve paths to ancestors> is called and PHIGS is open but
       no archive file is open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

TEST: #SR 7
      "If <delete structures from archive> is called and PHIGS is open but
       no archive file is open, it should write an accurate,
       self-identifying error message on the error file."
pass/fail depending on (operator verifies error message)

END PROGRAM 7