Design: 02.01.03.03/P02

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 2: Changing a structure identifier and references when
           the original and resulting identifier are the same

CHARACTERISTICS: ynnn

OPERATOR SCRIPT: passive test.

DESIGN:

The following is the "standard" CSS network for module 02.01.03.  This
CSS network will be used throughout to test the resulting state of the
CSS after execution of the <change structure identifier and references>
function.  Before each test case the CSS state is completely reset.

                  100
                  /  \
                 /    \
               1/      \2
               /        \
              /          \
          101              102     120   130      140
           |              / | \     |    /|        |
           |2            /  |  \    |   / |       1|
           |           1/  2|  5\  2|  /3 |5       |
           |           /    |    \  | /   |        |
          103         /     |     \ |/    |       142
                   104     105     106   107
                   | |       |     |    / /\
                  2| |5     /|\    |   / /  \
                   | |    1/ | \2 1| 1/ /4   \5
                   109    /  |  \  | / /      \
                         /   |   \ |/ /       113
                       110   |    108
                             |     |
                             |     |2
                             |3    |
                             |     |
                             |    111
                             |   / |
                             | 1/  |
                             | /  3|
                             |/    |
                            114   115

*** *** *** ***   Common structure = NON-EXISTENT   *** *** *** ***

TEST: #SR 2
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       does not exist should create an empty structure."

comstr = 300
<change structure identifier and references> comstr, comstr
Use <inquire structure status> to determine
    strsti = structure status indicator
pass/fail depending on (strsti = EMPTY)

TEST: #SR 2
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       does not exist should create an empty structure thus changing
       the contents of the CSS."

pass/fail depending on (CSS =

                   100
                  /  \
                 /    \
               1/      \2
               /        \
              /          \
          101              102     120   130      140         300
           |              / | \     |    /|        |           |
           |2            /  |  \    |   / |       1|           |0
           |           1/  2|  5\  2|  /3 |5       |           |
           |           /    |    \  | /   |        |           |
          103         /     |     \ |/    |       142
                   104     105     106   107
                   | |       |     |    / /\
                  2| |5     /|\    |   / /  \
                   | |    1/ | \2 1| 1/ /4   \5
                   109    /  |  \  | / /      \
                         /   |   \ |/ /       113
                       110   |    108
                             |     |
                             |     |2
                             |3    |
                             |     |
                             |    111
                             |   / |
                             | 1/  |
                             | /  3|
                             |/    |
                            114   115   )


*** *** *** *** *** Common structure = closed, not posted *** *** *** *** ***

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is closed and not posted should result in the structure being
       closed, contents unchanged, and not posted."

comstr = 120
<change structure identifier and references> comstr, comstr

use <inquire open structure> to determine
    stype  = open structure status
use <inquire posted structures> to determine
    pstnum = number of posted structures

pass/fail depending on (stype  =  NONE
                        pstnum =  0
                        comstr contents = AS IS)

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is closed and not posted should have no effect on the contents
       of the CSS."

pass/fail depending on (CSS =

                   100
                  /  \
                 /    \
               1/      \2
               /        \
              /          \
          101              102     120   130      140
           |              / | \     |    /|        |
           |2            /  |  \    |   / |       1|
           |           1/  2|  5\  2|  /3 |5       |
           |           /    |    \  | /   |        |
          103         /     |     \ |/    |       142
                   104     105     106   107
                   | |       |     |    / /\
                  2| |5     /|\    |   / /  \
                   | |    1/ | \2 1| 1/ /4   \5
                   109    /  |  \  | / /      \
                         /   |   \ |/ /       113
                       110   |    108
                             |     |
                             |     |2
                             |3    |
                             |     |
                             |    111
                             |   / |
                             | 1/  |
                             | /  3|
                             |/    |
                            114   115   )

*** *** *** *** *** Common structure = closed, posted *** *** *** *** ***

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is closed and posted should result in the structure being closed,
       contents unchanged, and posted."

comstr = 108
compri = .47
<post structure> comstr, compri
<change structure identifier and references> comstr, comstr

use <inquire open structure> to determine
    stype  = open structure status
use <inquire posted structures> to determine
    pststr = posted structure
    pstnum = number of posted structures
    priori = priority of posted structure

pass/fail depending on (stype  =  NONE
                        pstnum =  1
                        pststr =  comstr
                        priori =  compri
                        comstr contents = AS IS)

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is closed and posted should have no effect on the contents of
       the CSS."

pass/fail depending on (CSS =

                   100
                  /  \
                 /    \
               1/      \2
               /        \
              /          \
          101              102     120   130      140
           |              / | \     |    /|        |
           |2            /  |  \    |   / |       1|
           |           1/  2|  5\  2|  /3 |5       |
           |           /    |    \  | /   |        |
          103         /     |     \ |/    |       142
                   104     105     106   107
                   | |       |     |    / /\
                  2| |5     /|\    |   / /  \
                   | |    1/ | \2 1| 1/ /4   \5
                   109    /  |  \  | / /      \
                         /   |   \ |/ /       113
                       110   |    108
                             |     |
                             |     |2
                             |3    |
                             |     |
                             |    111
                             |   / |
                             | 1/  |
                             | /  3|
                             |/    |
                            114   115   )


*** *** *** *** *** Common structure = opened, posted *** *** *** *** ***

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is opened and posted should result in the structure being opened,
       contents unchanged, and posted."

comstr = 120
<open structure> comstr
compri = .47
<post structure> comstr, compri
<change structure identifier and references> comstr, comstr

use <inquire open structure> to determine
    opnstr = open structure
    stype  = open structure status
use <inquire posted structures> to determine
    pststr = posted structure
    pstnum = number of posted structures
    priori = priority of posted structure

pass/fail depending on (stype  = OPEN
                        opnstr = comstr
                        pstnum = 1
                        pststr = comstr
                        priori = compri
                        comstr contents = AS IS)

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is opened and posted should have no effect on the contents of
       the CSS."

pass/fail depending on (CSS =

                   100
                  /  \
                 /    \
               1/      \2
               /        \
              /          \
          101              102     120   130      140
           |              / | \     |    /|        |
           |2            /  |  \    |   / |       1|
           |           1/  2|  5\  2|  /3 |5       |
           |           /    |    \  | /   |        |
          103         /     |     \ |/    |       142
                   104     105     106   107
                   | |       |     |    / /\
                  2| |5     /|\    |   / /  \
                   | |    1/ | \2 1| 1/ /4   \5
                   109    /  |  \  | / /      \
                         /   |   \ |/ /       113
                       110   |    108
                             |     |
                             |     |2
                             |3    |
                             |     |
                             |    111
                             |   / |
                             | 1/  |
                             | /  3|
                             |/    |
                            114   115   )


*** *** *** *** *** Common structure = opened, not posted *** *** *** *** ***

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is opened and not posted should result in the structure
       being opened, contents unchanged, and not posted."

comstr = 108
<open structure> comstr
<change structure identifier and references> comstr, comstr

use <inquire open structure> to determine
    opnstr = open structure
    stype  = open structure status
use <inquire posted structures> to determine
    pstnum = number of posted structures

pass/fail depending on (stype  = OPEN
                        opnstr = comstr
                        pstnum = 0
                        comstr contents AS IS)

TEST: #SR 3
      "<Change structure identifier and references> where the original
       and resulting identifier are the same and the common structure
       is opened and not posted should have no effect on the contents
       of the CSS."

pass/fail depending on (CSS =

                   100
                  /  \
                 /    \
               1/      \2
               /        \
              /          \
          101              102     120   130      140
           |              / | \     |    /|        |
           |2            /  |  \    |   / |       1|
           |           1/  2|  5\  2|  /3 |5       |
           |           /    |    \  | /   |        |
          103         /     |     \ |/    |       142
                   104     105     106   107
                   | |       |     |    / /\
                  2| |5     /|\    |   / /  \
                   | |    1/ | \2 1| 1/ /4   \5
                   109    /  |  \  | / /      \
                         /   |   \ |/ /       113
                       110   |    108
                             |     |
                             |     |2
                             |3    |
                             |     |
                             |    111
                             |   / |
                             | 1/  |
                             | /  3|
                             |/    |
                            114   115   )


END PROGRAM 2