// 
// * See the file "PlanWorks/disclaimers-and-notices.txt" for 
// * information on usage and redistribution of this file, 
// * and for a DISCLAIMER OF ALL WARRANTIES. 
// 
// $Id: planViz.txt,v 1.65 2004/10/13 23:49:23 taylor Exp $
//
// PlanWorks
//
// Will Taylor -- started 10oct03
//

This set of use cases covers the functionality of the PlanWorks Plan
Visualization (PlanViz) graphical user interface.


PLANVIZ-1
--------------------
Create a project.

Pre-conditions:
  1. PlanWorks is not running.
  2. PlanWorks data base is "clean".

Method:
  1. Start PlanWorks:
  2. Create a project with menu-bar selection "Project->Create ...",
     adding a plan sequence.

Post-conditions:
  1. PlanWorks frame title is suffixed with "=> <project-name>".
  2. "Planning Sequence" menu appears in the menu-bar.
  3. Menu-bar item "Project->Delete ..." is enabled.

Requirements: 3.2.a, 3.6, 3.7, 3.8


PLANVIZ-2
--------------------
Exercise error handling for missing partial plan files.

Pre-conditions:
  1. PlanWorks is not running.
  2. PlanWorks data base is "clean".
  3. Test sequence has been generated by the PartialPlanWriter.  Create three working
     copies of this test sequence.
  4. Working copy 1: cd work1/<seq-name>nnnnnnnnnnnnn; /bin/rm -rf *
  5. Working copy 2: cd work2/<seq-name>nnnnnnnnnnnnn; rm sequence
  6. Working copy 3: cd work4/<seq-name>nnnnnnnnnnnnn; /bin/rm -rf step<m>

Method:
  1. Start PlanWorks:
  2. Create a project with menu-bar selection "Project->Create ...",
     try to add test sequence: work1/<seq-name>nnnnnnnnnnnnn.
  3. Click "OK" on the error dialog and then "Project->Delete-><project-name>.
  4. Create a project with menu-bar selection "Project->Create ...", and select
     work2/<seq-name>nnnnnnnnnnnnn
     then
     work3/<seq-name>nnnnnnnnnnnnn
     and finally
     work4/<seq-name>nnnnnnnnnnnnn.  Click on "OK".
  5. Click "OK" on the error dialog.
  6. Select "Planning Sequence-><seq-name> and in the SequenceStepsView, Mouse-Right
     on the <m>'th step.
  7. Select "Open DBTransaction View" and then "Project->Delete-><project-name>.

Post-conditions:
  1. Method: 2 - Error dialog appears: "Invalid Sequence Directory" with
     "<..../work1/<seq-name>nnnnnnnnnnnnn>  1 sequence files in directory -- 4 are required".
  2. Method: 3 - Error dialog disappears and PlanWorks frame title has <project-name>
     removed.
  3. Method: 4 - Error dialog appears: "Invalid Sequence Directory" with
     "<..../work2/<seq-name>nnnnnnnnnnnnn>  3 sequence files in directory -- 4 are required".
  4. Method: 5 - Error dialog disappears and the third sequence is loaded successfully.
  5. Method: 6 - "Open DBTransaction View" is the only selection available.
  6. Method: 7 - DBTransaction View appears, and then PlanWorks frame title has <project-name>
     removed.

Requirements: N/A


PLANVIZ-3
--------------------
Exercise error handling for duplicate projects

Pre-conditions:
  1. PlanWorks is running.
  2. Test project has been created.

Method:
  1. Create a project with the same name as the test project, using
     menu-bar selection "Project->Create ...".

Post-conditions:
  1. Error dialog "Duplicate Name Exception" appears.

Requirements: 3.9


PLANVIZ-4
--------------------
Delete a project.

Pre-conditions:
  1. PlanWorks is running.
  2. Test project has been created, and is the only project.

Method:
  1. Delete test project with menu-bar selection "Project->Delete ...".

Post-conditions:
  1. PlanWorks frame title suffix "=> <project-name>" is removed.
  2. Menu-bar item "Project->Delete ..." is disabled.

Requirements: 3.2.c


PLANVIZ-5
--------------------
Open a project.

Pre-conditions:
  1. PlanWorks is running.
  2. Test project has been created.

Method:
  1. Create a second test project, with a unique name, with menu-bar 
     selection "Project->Create ...".
  2. Open first test project with menu-bar selection "Project->Open ...".

Post-conditions:
  1. Method:1 - PlanWorks frame title is suffixed with "=> <test-project-2>".
  2. Method:1 - Menu-bar item "Project->Open ..." is enabled.
  3. Method:2 - PlanWorks frame title is suffixed with "=> <test-project-1>".

Requirements: 3.2.c


PLANVIZ-6
--------------------
Add sequences to a project.

Pre-conditions:
  1. PlanWorks is running.
  2. Project "test1" is the only project in the data base.  It has
     plan sequence "test-seq-1".

Method:
  1. Add sequence "test-seq-2" to "test1" project with menu-bar selection
     "Project->Add Sequence ...".
  2. Add sequence "test-seq-3" to "test1" project with menu-bar selection
     "Project->Add Sequence ...".

Post-conditions:
  1. PlanWorks frame title remains suffixed with "=> "test1"".
  2. Menu-bar selection "Planning Sequence" offers user three sequences for
     viewing: "test-seq-1", "test-seq-2", and "test-seq-3".

Requirements: 3.10


PLANVIZ-7
--------------------
Display the Timeline Views of multiple sequence partial plans.

Pre-conditions:
  1. PlanWorks is running.
  2. "test-seq-2", and "test-seq-3" have been added to the "test1" project
     as sequences, in addtion to "test-seq-1"

Method:
  1. Display "test1" Sequence Steps View using menu-bar selection
     "Planning Sequence->test-seq-1".
  2. Display "test-seq-1" Timeline View by clicking Mouse-Right on the "step<n>"
     element of the "SequenceStepsView of test-seq-1", and selecting 
     "Timeline View".
  3. Display "test-seq-2" Sequence Steps View using menu-bar selection
     "Planning Sequence->test-seq-2".
  4. Display "test-seq-2" Timeline View by clicking Mouse-Right on the "step<n>"
     element of the "SequenceStepsView of test-seq-2", and selecting
     "Timeline View"".
  5. Display "test-seq-3" Sequence Steps View using menu-bar selection
     "Planning Sequence->test-seq-3".
  6. Display "test-seq-3" Timeline View by clicking Mouse-Right on the "step<n>"
     element of the "SequenceStepsView of test-seq-3", and selecting
     "Timeline View"".
  7. Display "test-seq-1" Timeline View by selecting "SequenceStepsView of
     "test-seq-1", to bring it to the front, and then clicking Mouse-Right on 
     the "step<n>" element of the "SequenceStepsView of test-seq-1", and selecting 
     "Timeline View"".

Post-conditions:
  1. Using the contents of the menu-bar pull-down item "Window", verify that there
     are three ContentFilter windows, and three TimelineView windows.
  2. The TimelineView of "test-seq-1" was brought to the front by method step 7.

Requirements: 4.0.2, 4.0.3, 4.2.1, 4.2.2


PLANVIZ-8
--------------------
Perform "tiling" and cascading layouts of multiple view and Content Filter windows.

Pre-conditions:
  1. PlanWorks is running.
  2. "test-seq-2", and "test-seq-3" have been added to the "test1" project
     as sequences, in addtion to "test-seq-1".  All sequences have been opened
     using "Planning Sequence-> ....
  3. Each sequence has its SequenceQuery, and Sequence Steps View windows 
     displayed.  For one step in each sequence, open a Timeline View window, 
     which opens a Content Filter window, as well, by selecting "Open Timeline View"
     from the Mouse-Right popup menu over a particular step of the Sequence 
     Steps View.

Method:
  1. Layout the windows using menu-bar selection "Window->Tile Windows".
  2. Layout the windows using menu-bar selection "Window->Cascade".

Post-conditions:
  1. All twelve windows are non-overlapping "tiles", after Method:1.  The
     ContentFilter and SequenceQuery windows are tiled across the top row of
     the frame.  The TimelineView and SequenceStepsView windows are tiled
     in the second thru fourth rows.
  2. After Method:2, the six ContentFilter and SequenceQuery windows are 
     tiled across the top of the frame, and six Sequence Steps Views and
     Timeline Views are an overlapping cascade from the upper left to the 
     lower right, under the ContentFilter and SequenceQuery windows.

Requirements: 4.2.3.f


PLANVIZ-9
--------------------
Delete sequences from a project.

Pre-conditions:
  1. PlanWorks is running.
  2. "test-seq-2", and "test-seq-3" have been added to the "test1" project
     as sequences, in addtion to "test-seq-1"
  3. Each sequence has its SequenceQueryView, and SequenceStepsView windows 
     displayed.  For one step in each sequence, open a Timeline View window, 
     which opens a ContentFilter window, as well, by selecting "Open Timeline View"
     from the Mouse-Right popup menu over a particular step of the Sequence 
     Steps View.
  4. Use "SequenceQuery for test-seq-2" to create a "Steps" and a
     "Transactions" QueryResult for ..." window.

Method:
  1. Delete "test-seq-2" sequence by using menu-bar selection of
     "Project->Delete Sequence ...".
  2. Delete "test-seq-3" sequence by using menu-bar selection of
     "Project->Delete Sequence ...".
  3. Re-add "test-seq-3" sequence by using menu-bar selection of
     "Project->Add Sequence ...".  Then open the sequence using
     "Planning Sequence->test-seq-3"

Post-conditions:
  1. Method:2 - Four windows remain: the ContentFilter, the SequenceQuery,
     the TimelineView, and the SequenceStepsView of "test-seq-1".
  2. Method:3 - there are now six windows: the SequenceQuery, and
     SequenceStepsView of "test-seq-3" were added.

Requirements: 3.10


PLANVIZ-10
--------------------
Display all partial plan views for a sequence step, except Resource Profile and
Resource Transaction views, which are handled in PLANVIZ-21, and Decision view,
which is handled in PLANVIZ-24.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open.
  3. No partial plan views are displayed.

Method:
  1. Display "test-seq-1" Sequence Steps View using menu-bar selection
     "Planning Sequence->test-seq-1".
  2. Display "test-seq-1/step<nn>" Constraint Network View by clicking Mouse-Right on the
     "step<nn>" element of the "SequenceStepsView of test-seq-1", and selecting
     "Constraint Network View".
  3. Display "test-seq-1/step<nn>" Temporal Extent View by clicking Mouse-Right on the
     "step<nn>" element of the "SequenceStepsView of test-seq-1", and selecting
     "Temporal Extent View".
  4. Display "test-seq-1/step<nn>" Timeline View by clicking Mouse-Right on the
     "step<nn>" element of the "SequenceStepsView of test-seq-1", and selecting
     "Timeline View".
  4. Display "test-seq-1/step<nn>" Token Network View by clicking Mouse-Right on the
     "step<nn>" element of the "SequenceStepsView of test-seq-1", and selecting
     "Token Network View".
  5. Display "test-seq-1/step<nn>" DBTransaction View by clicking Mouse-Right on the
     "step<nn>" element of the "SequenceStepsView of test-seq-1", and selecting
     "DBTransactionView".
  6. Open the first two token nodes of the Constraint Network View, and then
     open the "closed" variable and constraint nodes that result.  Then 
     close the "opened" variable, constraint, and token nodes to return to the
     initial state.
  7. On "step<nn>" element of "SequenceStepsView of test-seq-1", click
     Mouse-Right and select "Hide All Views", then "Show All Views", and then
     "Close All Views".
  8. On the Sequence Steps View, use Mouse-Right "Overview Window" to open a
     1/8th scale overview of the entire "observed" view.  

Post-conditions:
  1. Method:6 - All variable containing nodes: interval tokens and resource transactions
     (rectangles); resources (pinched/peaked rectangles); timelines (forward
     trapezoids); objects (backward trapezoids); and rule instances (ellipses)  appear in
     the Constraint Network View.  Variable nodes ("pinched" rectangles) and constraint
     nodes (left/right pointed rectangles) are linked to the variable containing nodes
     "opened".  Node labels consist of the node name and the node key value.
     Mouse cursor over interval token nodes displays "predicateName ( parameterValues)"
     on the first line, its slot key value on the second line, and
     "Mouse-L: open/close" on the third line.  The second line is absent for the other
     variable containing nodes.  Variable node labels consist of the variable value and 
     the variable key value.  Mouse cursor over variable nodes displays "variableType:
     variableName" on the first line, and "Mouse-L: open/close" on the second line, for
     all variable types except OBJECT_VAR. Mouse cursor over OBJECT_VAR type variable
     nodes displays "variableType" on the first line, "value: <value>" on the second and
     subsequent lines for each of 1 to n objects, and "Mouse-L: open/close" on the last
     line.  Constraint node labels consist of the constraint name and the constraint key
     value.  Mouse cursor over constraint nodes displays "constraintType" on the first 
     line, and "Mouse-L: open/close" on the second line, if the constraint is not unary.
  2. All slotted and free interval token nodes appear in the Temporal Extent View
     as temporal nodes.  Temporal node labels consist of the predicate name and the 
     token key value.  Mouse cursor over a temporal node displays "predicateName(
     parameterValues)", and its slot key value on the second line, if it is a slotted 
     token.  Mouse cursor over start/end interval "triangles" displays their time 
     scale value.  Mouse cursor over a token's duration line displays the duration 
     time interval.
  3. Timeline nodes (colored rectangles), slot nodes (peaked rectangles), and free 
     token nodes (transparent rectangles) appear in the Timeline View.  Timeline 
     node labels consist of the object name, the timeline name, and the timeline
     key value.  Slot node labels consist of the slotted token predicate name, the
     number of tokens on the slot, and the slot key value.  Empty slot labels
     replace the predicate name and number of tokens with "-empty-".  Mouse cursor
     over slot nodes displays the slot's "predicateName( parameterValues)",
     and the second line displays the token keys(s), if it is not an "empty" slot.
     Free token labels consist of the predicate name, and the token key value.  The
     mouse cursor over free token nodes displays the free token's
     "predicateName( parameterValues)".
  4. Interval tokens (slotted and free), resource transactions, and rule instances appear
     as nodes, with interval tokens as "master roots" in the Token Network View.  Node
     labels consist of the name and the key value.  Mouse cursor over interval token nodes 
     displays "predicateName( parameterValues)", and the second line displays its 
     slot key, if the token is slotted.  Mouse cursor over resource transaction nodes 
     displays the transaction name and argument.  The rule instance nodes have no
     mouse over "tool tip text".
  5. Transaction entries appear in the DBTransaction View.  All transaction
     entries have values for TX_KEY, TRANSACTION_NAME, SOURCE, OBJ_KEY, and
     OBJ_NAME.  Entries with TRANSACTION_NAMEs of VARIABLE_* have values for 
     PREDICATE_NAME.  Entries with TRANSACTION_NAMEs of VARIABLE_* and OBJ_NAME = 
     PARAMETER_VAR have values for PARAMETER_NAME.
  6. Method:7 - First all the "step<nn>" windows should be iconified, then shown
     again, and then deleted.
  7. Method:8 - An overview window of the Sequence Steps View should appear.


Requirements: 4.2.1, 4.2.2, 4.2.3.d, 4.2.3.e, 4.2.3.f, 4.3.2.a


PLANVIZ-11
--------------------
Exercise popup menu facilities of partial plan views, except Resource Profile and
Resource Transaction views, which are handled in PLANVIZ-21, and Decision view,
which is handled in PLANVIZ-24.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open, and all partial plan views are being
     displayed for step<nn> of sequence "test1-sequence1", by using
     Mouse-Right "Open All Views" on step<nn> of "SequenceStepsView of
     test1-sequence1".

Method:
  1. Using either the Constraint Network, Temporal Extent, Timeline, or
     Token Network view, choose keys for a timeline, a slotted token, a free token,
     a slot, a variable, a constrain, and a rule instance.
  2. Mouse-Right click, in turn, on the Constraint Network , Temporal Extent, 
     Timeline, and Token Network views, selecting "Find by Key",
     entering the slotted token key value, and then selecting "Enter".
  3. Mouse-Right, in turn, the Constraint Network, Temporal Extent, 
     Timeline, and Token Network views, selecting "Find by Key",
     entering the free token key value, and then selecting "Enter".
     For the Timeline view, enter the slot key value in "Find by Key".
     For the Timeline view, enter the timeline key value in "Find by Key".
     For the Constraint Network view, enter the variable and constraint
     key values in "Find by Key".  For the Token Network view, enter the
     rule instance key  value in "Find by Key".
  4. Arbitrarily, pick a slotted token node in one of the views, and Mouse-
     Right click on the node, selecting "Set Active Token".
  5. In each of the other views, except for the DBTransaction view, Mouse-
     Right click on the background, and select "Snap to Active Token".
  6. Arbitrarily, pick a free token node in one of the views, and Mouse-
     Right click on the node, selecting "Set Active Token".
  7. In each of the other views, except for the DBTransaction view, Mouse-
     Right click on the background, and select "Snap to Active Token".
  8. In the Temporal Extent view, Mouse-Right click on the background, and
     select "Set Time Scale Line".  Also select "Hide/Show Node Labels"
     from the Mouse-Right pop-up menu, as well as "Show Earliest" and 
     "Show Latest", which are options to "Show Intervals".
  9. In the DBTransaction view, Mouse-Right click on the background of the 
     "header" portion of the view, and select "Find Transaction by Entity_Key".
     Enter an ENTITY_KEY value.
 10. In the DBTransaction view, move the mouse over any of the column header
     nodes and sort, in either ascending or descending order, by Mouse-Left
     click to initiate the sort.  Sort all the columns.
 11. In each partial plan view, use Mouse-Right "Open <view-name> View" to
     navigate to the other views.  Iconify the ContentFilter window, by clicking
     on the "minimize" icon of its title bar.  In all views, except DBTransaction
     and Decision, use Mouse-Right "Raise Content Filter" to set focus on the 
     ContentFilter window.
 12. For a selected plan sequence step, select Mouse-Right "Close All Views".
     Then open only two partial plan views, and on one of them, choose Mouse-Right 
     "Hide All Views".  Then from the menu bar select the other one of them, and
     when it appears select on it Mouse-Right "Show All Views", and then
     "Open All Views".  Do this for each of the partial plan views.
 13. In each partial plan view, use Mouse-Right "Overview Window" to open a
     1/8th scale overview of the entire "observed" view.  Drag the scoping
     rectangle to cause the "observed" view to scroll.  Use Mouse-Left clicks
     on areas outside the rectangle to cause the "observed" view to jump to
     a new location.  Do this for all partial plan views, except DBTransaction
     and Decision.
 14. In the Timeline View, Mouse-Right click on the background and select
     "Enable Auto Snap". Then move the mouse cursor over slots, and free tokens.
     (empty slots are not recognized)
 15. In the Token Network, Mouse-Right click on several rule instance nodes, selecting
     "Open Rule Instance View" for each.
 16. In the Token Network, Mouse-Right click on the background and select
     "Close Rule Instance Views".
 17. In the Constraint Network View, Mouse-Right click on the background and select
     "Find Entity Path", enter two variable keys, and click "Does Path Exist" and then
     "Find Path".
 18. In the Constraint Network View, Mouse-Left click on the background, and then
     Mouse-Right click on the background and select "Highlight Current Path".
 19. In the Token Network View, Mouse-Right click on the background and select
     "Find Entity Path", enter two token keys, and click "Does Path Exist" and then
     "Find Path".
 20. In the Token Network View, Mouse-Left click on the background, and then
     Mouse-Right click on the background and select "Highlight Current Path".
 21. Select Mouse-Right on the background of each view and in turn select "Step Backward
     All Views" and "Step Forward All Views".


Post-conditions:
  1. Method:2 - In turn, each of the views should re-oriented itself to
     display the selected slotted token node with a green highlight around it.
  2. Method:3 - In turn, each of the views should re-oriented itself to
     display the selected free token node key with a green highlight around it.
     The same behavior should be observed for the Timeline view with the slot 
     key value, and the timeline key value; and the Constraint Network view with 
     the variable and constraint key values.
  3. Method:4 - the selected slotted token node will have a green highlight 
     around it.
  4. Method:5 - Each of the other views should re-oriented itself to
     display the selected slotted token node with a green highlight around it.
  5. Method:6 -the selected free token node will have a green highlight 
     around it.
  6. Method:7 - Each of the other views should re-oriented itself to
     display the selected free token node with a green highlight around it.
  7. Method:8 - a red vertical line should appear at the location of the
     mouse click, and placing the mouse cursor over the red line will cause
     a "tool tip" to appear with the value of the "x" or time coordinate.
     The node labels will disappear/appear with selections of "Hide/Show Node Labels".
     "Show Earliest", "Show Latest", and "Show Intervals" will redraw the nodes
     based on earliest/latest/interval for their start, end, and duration times.
  8. Method:9 - The lower portion of the DBTransaction view will scroll up to 
     show the transaction entry with the selected ENTITY_KEY value.  The ENTITY_KEY
     value will be highlighted.
  9. Method:10 - The values in the columns which are sorted will be redisplayed
     in the proper order.
 10. Method:11 - The selected view or window will be raised to the top of the
     internal frame, and will have focus.
 11. Method:12 - the partial plan step's views will respond appropriately to
     the "Hide", "Show", "Open" and "Close" selections.
 12. Method:13 - The "observed" views should respond properly to operations on
     the overview windows.
 13. Method:14 - The Temporal Extent View's focus with green highlight will
     follow the movement of the mouse cursor over the Timeline View's non-
     empty slots (base tokens) and free tokens.  If a slot has merged tokens, 
     the merged tokens will be highlighted turquoise.
 14. Method:15 - The "Rule Instance View for <sequence-name>/step<nn> - n" will 
     show the "to" and "from" token predicates and parameter lists, their keys, 
     and the model rule which is responsible for their creation.
 15. Method:16 - All "Rule Instance View"s will be removed.
 16. Method:17 - The node path ids will be listed in a dialog and the nodes will
     be rendered and highlighted: the first green and the others turquoise.
 17. Method:18 - After the Mouse-Left click the node highlighting will disappear.
     After the Mouse-Right click the node highlighting of Method:17 will reappear.
 18. Method:19 - The node path ids will be listed in a dialog and the nodes will
     be rendered and highlighted: the first green and the others turquoise.
 19. Method:20 - After the Mouse-Left click the node highlighting will disappear.
     After the Mouse-Right click the node highlighting of Method:18 will reappear.
 20. Method:21 - the view titles will reflect that the views displayed are the next
     lowest step (backward), or the next highest step (forward).


Requirements: TBD


PLANVIZ-12
--------------------
Use the Content Filter dialog to filter which tokens are displayed on the 
partial plan views.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open, and all partial plan views, except DBTransaction,
     Decision, Resource Profile, and Resource Transaction views, are being displayed
     for step<nn> in a "tiled" layout arrangement.  Create overview windows for each 
     partial plan view to aid to monitoring the effects of Content Filter application.
  3. The Constraint Network View has been expanded for at least two tokens,
     and all their variable and constraint nodes.

Method:
  1. Select a "Predicate" from the Content Filter.  Apply it.
  2. Check "NOT" for the selected predicate.  Apply it.
  3. Select "AND" from the combo box to the left of the "Predicate", 
     select another predicate, and check "NOT" for it, as well.  Apply it.
  4. Change the "AND" to an "OR" and uncheck the "NOT" boxes for the
     two predicates.  Apply it.
  5. Reset the filter.
  6. Select a "Timeline" from the Content Filter.  Apply it.
  7. Utilize "AND", "OR", and "NOT", as with "Predicate", for variations
     of Timeline selection.
  8. Reset the filter.
  9. Enter Time Interval "Start" and "End" values in the Content Filter.  Apply it.
 10. Utilize "AND", "OR", and "NOT", as with "Predicate", for variations
     of Time Interval selection.
 11. Reset the filter.
 12. Check "Merge tokens".  Apply it.
 13. Check "View slotted" or "View free tokens".  Apply it.
 14. Reset the filter.
 15. Check "NOT" for a selected Timeline.  Check "require" and enter a 
     token key, select "Add" and "require" another token key -- assuming
     that these keys are in the selected timeline.  Apply it.
 16. Select "Remove" for the second required key, and change "require"
     to "exclude" for the first key.  Uncheck the "NOT" for the
     selected timeline.  Apply it.
 17. Reset the filter.
 18. Click Mouse-Right on a background area of the Content Filter dialog,
     and choose either opening an individual partial plan view or all
     the partial plan views.

Post-conditions:
  1. Method:1 - only tokens of the selected predicate are displayed in
     the views.
  2. Method:2 - all tokens, except those of the selected predicate, will
     be displayed in all views.
  3. Method:3 - all tokens, except those of the two selected predicates, 
     will be displayed in all views.
  4. Method:4 - only tokens of the two selected predicates, will be 
     displayed in all views.
  5. Method:5 - all tokens are displayed.
  6. Method:6 - only that timeline, and tokens in it are displayed.
  7. Method:7 - variations with Timeline, similar to Predicate.
  8. Method:8 - all tokens are displayed.
  9. Method:9 - only those tokens whose start/end variable extents occur
     within the interval will be displayed.
 10. Method:10 - variations with Time Interval, similar to Predicate and
     Timeline.
 11. Method:11 - all tokens are displayed.
 12. Method:12 - Tokens which are overloaded on timeline slots are not displayed.
 13. Method:13 - If "slotted", no free tokens will be displayed.  If "free
     tokens", only free tokens will be displayed.
 14. Method:14 - all tokens are displayed.
 15. Method:15 - the only tokens from the not selected timeline which are
     displayed are the required tokens
 16. Method:16 - Only tokens from the selected timeline are displayed, except
     for the "exclude" token.
 17. Method:17 - all tokens are displayed.
 18. Method:18 - The selected partial plan view(s) will be opened.

Note: In the Constraint Network View, variable and constraint nodes are
     associated with their nearest token, and are displayed or not,
     depending on that token.

Requirements: 4.1.1, 4.1.2.a, 4.1.2.b, 4.1.2.c, 4.1.3, 4.1.4, 4.1.5,
     4.1.7, 4.1.8, 4.1.9


PLANVIZ-13
--------------------
Use the Sequence Query dialog to display windows with sequence query information.
Querying of free tokens and unbound variables is handled by PLANVIZ-18.

Pre-conditions:
  1. PlanWorks is running.
  2. A project is open, which has a multi-step sequence.

Method:
  1. Select the sequence from the "Planning Sequence" menu.
  2. Select a DBTransaction View from one of the sequence steps, using the
     Mouse-Right popup menu.  Pick constraint, token, and variable key
     values to use for appropriate queries.
  3. Using the "SequenceQuery" dialog, select "Steps" and then select in
     turn the qualified "Steps" queries: "Where Constraint/Token/Variable
     Transacted", which expand into a "Key" field and a type "combo box".
     Use the keys from Method:2 for the object types, and then permute the
     transaction types for each object type.  Also, leave the "Key" field
     blank for some cases.  Click on "Apply Query".
  4. In the "QueryResults" windows created by Method:3, which have no "Key"
     field or have a blank "Key" field, Mouse-Right click on the background 
     of the "header" portion of the view, and select "Find Transaction by CSTR_KEY",
     or "VAR_KEY", or "TOK_KEY".  Enter the key values.
  5. Using the "SequenceQuery" dialog, select "Steps" and then select in
     turn the qualified "Steps" queries: With Non-unit Variable Decisions/With
     Restrictions/With Unit Variable Decisions.  These queries do not expand.
     Click on "Apply Query".
  6. Using the "SequenceQuery" dialog, select "Transactions" and then select in
     turn the qualified "Transactions" queries: "For Constraint/Token/Variable",
     which expand into a "Key" field; and "In Range", which expands into
     "StartStep" and "EndStep" fields.  Enter appropriate values for the
     fields, and click on "Apply Query".
  7. In the "In Range" "QueryResults" window created by Method:6, Mouse-Right 
     click on the background of the "header" portion of the view, and select 
     "Find Transaction by ENTITY_KEY".  Enter an ENTITY_KEY value.
  8. Using the "SequenceQuery" dialog, select "Free Tokens ... At Step ...",
     enter a step number, and click on "Apply Query".
  9. In the "Free Tokens" "QueryResults" window created by Method:8, Mouse-Right 
     click on the background of the "header" portion of the view, and select 
     "Find Token by TOK_KEY".  Enter an TOK_KEY value.
 10. Using the "SequenceQuery" dialog, select "Unbound Variables ... At Step ...", 
     enter a step number, and click on "Apply Query".
 11. In the "Unbound Variables" "QueryResults" window created by Method:10,
     Mouse-Right click on the background of the "header" portion of the view, 
     and select "Find Variable by VAR_KEY".  Enter an VAR_KEY value.
 12. Using the "SequenceQuery" dialog, select "All Decisions ... At Step ...",
     enter a step number, and click on "Apply Query".
 13. In each of the "QueryResults" windows, move the mouse over any of the 
     column header nodes to see whether that column is sortable, in either 
     ascending or descending order.  Mouse-left click to initiate the sort.  
     Sort all the columns.
 14. On "Step" column values of "Steps", "Transactions", "Free Tokens", and
     "Unbound Variables" QueryResults windows, click Mouse-Right to popup a 
     menu of individual and group partial plan view operations.  Select one 
     of the options.
 15. On the background of the "SequenceQuery ..." dialog, click Mouse-Right
     and select "CloseQuery Results Windows".

Post-conditions:
  1. Method:1 - the Sequence Query and Sequence Steps View windows appear.
  2. Method:2 - "DBTransactionView" window appears.
  3. Method:3 - Use "DBTransactionView" windows for appropriate steps of the
     Sequence Steps View to verify the results in the "QueryResults" windows.
  4. Method:4 - The lower portion of the "QueryResults" window will scroll up 
     to show the transaction entry with the selected CSTR/VAR/TOK_KEY value.  
     The CSTR/VAR/TOK_KEY value will be highlighted.
  5. Method:5 - Verify these queries using knowledge from the plan sequence.
  6. Method:6 - Use "DBTransactionView" windows for appropriate steps of the
     Sequence Steps View to verify the results in the "QueryResults" windows.
  7. Method:7 - The lower portion of the "QueryResults" window will scroll up 
     to show the transaction entry with the selected OBJ_KEY value.  The OBJ_KEY
     value will be highlighted.
  8. Method:8 - Use "DBTransactionView" windows for appropriate steps of the
     Sequence Steps View to verify the results in the "QueryResults" windows.
  9. Method:9 - The lower portion of the "QueryResults" window will scroll up 
     to show the free token entry with the selected TOK_KEY value.  The TOK_KEY
     value will be highlighted.
 10. Method:10 - Use "DBTransactionView" windows for appropriate steps of the
     Sequence Steps View to verify the results in the "QueryResults" windows.
 11. Method:11 - The lower portion of the "QueryResults" window will scroll up 
     to show the transaction entry with the selected VAR_KEY value.  The VAR_KEY
     value will be highlighted.
 12. Method:12 - Two results windows appear: Free Tokens and Unbound Variables.
 13. Method:13 - The values in the columns which are sorted will be redisplayed
     in the proper order.
 14. Method:14 - The selected partial plan view(s) will be opened.
 15. Method:15 - All "QueryResults" windows created from the "SequenceQuery ..." 
     dialog, will be deleted.

Requirements: 4.3.1.a-g, 4.3.2.b-e


PLANVIZ-14
--------------------
Exercise handling of multiple sequences in a project.

Pre-conditions:
  1. PlanWorks is running.
  2. A project is open, which has a multi-step sequence.

Method:
  1. Add a second multi-step sequence to the current project.
  2. Delete the first sequence from the project.
  3. Re-add the original sequence to the project.
  4. Select the first sequence from the "Planning Sequence" menu.
  5. Select the second sequence from the "Planning Sequence" menu.

Post-conditions:
  1. Method:1 - Both planning sequences are visible in the "Planning Sequence" menu.
  2. Method:2 - Only the second sequence is visible in the "Planning Sequence" menu.
  3. Method:3 - Both planning sequence are visible in the "Planning Sequence" menu.
  4. Method:4 - The "Sequence Steps View" for the first project is visible.
  5. Method:5 - The "Sequence Steps View" for the second project is visible.  The two 
  "Sequence Steps View"s are visually distinct and represent two different sequences.

Requirements: N/A


PLANVIZ-15
--------------------
Exercise loading of sequences at planner runtime.

Pre-conditions:
  1. PlanWorks is running.
  2. A project is open.
  3. A planner writing properly formatted data is running.

Method:
  1. Select the "Add Sequence" item from the "Project" menu.
  2. Select the planning sequence being created by the planner.
  3. Select the sequence from the "Planning Sequence" menu.
  4. Right-click periodically in the background of the "Sequence Steps View" and select the 
  "Refresh" item.
  5. Open arbitrary views for arbitrary steps.

Post-conditions:
  1. Method:1 - The "Select Sequence Directory of Partial Plan Directorie(s)" dialog is visible.
  2. Method:2 - The "Planning Sequence" menu is enabled and the sequence exists as an item in that
  menu.
  3. Method:3 - The "Sequence Steps View" for the new planning sequence is visible.
  4. Method:4 - The "Sequence Steps View" is redrawn, with more steps and a possible scale change.
  5. Method:5 - The selected views are open and correct.

Requirements: N/A


PLANVIZ-16
--------------------
Exercise stepping forward and backward in single views.

Pre-conditions:
  1. PlanWorks is running.
  2. A project is open.
  3. "Sequence Steps View" is visible for a sequence with multiple steps.

Method:
  1. Open a view that is not the "DBTransaction View" for a plan step that is neither
     the first nor the last step.
  2. Click on the "Step forward" button.
  3. Click on the "Step backward" button.
  4. Open the "Overview Window" for the view.
  5. Click on the "Step forward" button.
  6. Click on the "Step backward" button.
  7. Open a view for the first step.
  8. Click on the "Step backward" button.
  9. Open a view for the last step.
  10. Click on the "Step forward" button.

Post-conditions:
  1. Method:1 - The selected view is visible and correct.  The plan step histogram
     element in the SequenceStepsView is highlighted.
  2. Method:2 - The view is replaced with the same view of the next step in the same position with
  possibly different size.  The plan step histogram element highlighting is on the next step.
  3. Method:3 - The view is replaces with the same view of the step that was originally opened.
  The plan step histogram element highlighting is on the original step.
  4. Method:4 - The "Overview Window" for the view is visible and correct.
  5. Method:5 - The view is replaced with the same view of the next step in the same position with
  possibly different size and the "Overview Window" is replaced with an "Overview Window" of the 
  next step.  The plan step histogram element highlighting is on the next step.
  6. Method:6 - The view is replaced with the same view of the previous step in the same position
  with possibly different size and the "Overview Window" is replaced with an "Overview Window" of
  the previous step.  The plan step histogram element highlighting is on the previous step.
  7. Method:7 - The selected view of the first step is visible and correct.
  8. Method:8 - An error dialog indicating that an attempt was made to move to a step previous to
  the first was made.
  9. Method:9 - The selected view of the last step is visible and correct.
  10. Method:10 - An error dialog indicating that an attempt was made to move to a step after the 
  last was made.

Requirements: N/A


PLANVIZ-17
--------------------
Test sequence closing procedure

Pre-conditions:
  1. PlanWorks is running.
  2. A project containing a sequence is open.
  3. A second, unopen project exists in the database.
  4. The "Sequence Steps View" is visible and correct.

Method:
  1. Right-click on a step.
  2. Select "Open All Views" from the menu.
  3. Repeat an arbitrary number of times.
  4. Close the "Sequence Steps View" window.
  5. Open a "Sequence Steps View" window.
  6. Right-click on a step.
  7. Select "Open All Views" from the menu.
  8. Repeat an arbitrary number of times.
  9. Click on the "Project" menu.
  10. Select the "Open Project" item.
  11. Choose a project and click "Ok".
  
Post-conditions:
  1. Method:2,7 - All views for the selected step are open and correct.
  2. Method:4 - The "Sequence Steps View" is closed along with all associated open Partial Plan 
  Views.
  3. Method:5 - The "Sequence Steps View" is visible and correct.
  4. Method:11 - The "Sequence Steps View" is closed along with all associated open Partial Plan
  Views and the "Planning Sequence" menu contains sequences associated with the opened project.

Requirements: N/A


PLANVIZ-18
--------------------
Test querying of unbound variables and free tokens.

Pre-conditions:
  1. PlanWorks is running.
  2. A project containing a sequence is open.
  3. The "Sequence Steps View" for the sequence is open.
  4. The "Sequence Query" window is visible.

Method:
  1. Select the "Free Tokens" option from the first combo box.
  2. Input a valid step into the text box.
  3. Click "Apply Query".
  4. Open the "Timeline View" for the chosen step and confirm that the Ids given in the query
  results match those in the view.
  5. Select the "Unbound Variables" option from the first combo box.
  6. Input a valid step into the text box.
  7. Click "Apply Query".
  8. Open the "Constraint Network View" for the chosen step and confirm that the Ids given in the
  query results match those in the view
  
Post-conditions:
  1. Method:3 - A "QueryResults" window is visible with tokens itemized.
  2. Method:7 - A "QueryResults" window is visible with variables itemized.

Requirements: N/A


PLANVIZ-19
--------------------
Exercise the Navigator View capabilities.

Pre-conditions:
  1. PlanWorks is running.
  2. A project containing a sequence is open.
  3. The "Sequence Steps View" for the sequence is open.
  4. For any sequence step, select Mouse-Right "Open All Views".
  5. Delete the "DBTransactionView", "DecisionView", "ResourceProfileView", and
     'ResourceTransaction" windows.

Method:
  1. In the Timeline View, Mouse-Right "Open Navigator View" on a
     timeline node.  Further expand the relationships of the timeline node.
  2. In the Timeline View, Mouse-Right "Open Navigator View" on a
     non-empty slot node.  Further expand the relationships of the slot node.
  3. In the Timeline View, Mouse-Right "Open Navigator View" on a
     free token node.  Further expand the relationships of the free token node.
  4. In the Temporal Extent View, Mouse-Right "Open Navigator View" on
     a interval token node, a free token node, and a resource transaction node.  
     Further expand the relationships of the token nodes.
  5. In the Token Network View, Mouse-Right "Open Navigator View" on
     a interval token node, a free token node, a resource transaction node, and
     a rule instance node.  Further expand the relationships of the selected nodes.
  6. In the Constraint Network View, Mouse-Right "Open Navigator View" on
     a interval token node, a free token node,  resource transaction node,
     a timeline node, a resource node, an object node, and a rule instance node.
     Further expand the relationships of the nodes.
  7. In the Constraint Network View, Mouse-Right "Open Navigator View" on a
     variable node.  Further expand the relationships of the variable node.
  8. In the Constraint Network View, Mouse-Right "Open Navigator View" on a
     constraint node.  Further expand the relationships of the constraint node.
  9. On the background of any of the Navigator Views, click Mouse-Right and select
     "Open <view-name> View", "Overview Window" , "Zoom View", and the "Open|Close|
     Show|Hide All Views".
 10. On the background of any of the Navigator Views, click Mouse-Right and select
     "Find Entity Path", entering in turn all the permutations of token, variable,
     constraint, rule instance, slot, object, resource, and timeline keys.  Click
     on "Find Path".
 11. On the background of any of the Navigator Views, click Mouse-Right and select
     "Find by Key", entering any appropriate entity key.

Post-conditions:
  1. Methods:1-8 - Use the other views to verify the relationships rendered on 
     the Navigator Views.
  2. Method:9 - Verify that the selected operations are completed.
  3. Method:10 - Verify that the proper node path is found and rendered, and the
     path nodes are highlighted.
  4. Method:11 - Verify that that node appears, being opening along with its
     neighbors, if necessary.

Requirements: N/A


PLANVIZ-20
--------------------
Exercise popup menu facilities of sequence steps views.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open, and all partial plan views are being
     displayed for step<nn> of sequence "test1-sequence1".
  3. Display all partial plan views for another step.

Method:
  1. In the SequenceSteps View, select Mouse-Right "Hide test1-sequence1/step Views"
     on the view background.
  2. In the SequenceSteps View, select Mouse-Right "Show test1-sequence1/step Views"
     on the view background.
  3. In the SequenceSteps View, select Mouse-Right "Close test1-sequence1/step Views"
     on the view background.

Post-conditions:
  1. Method:1 - All views vanish, but are listed by clicking on the "Window"
     menu bar item.
  2. Method:2 - All views reappear in their same locations.
  3. Method:3 - All views vanish, and are not listed by clicking on the "Window"
     menu bar item.
 

PLANVIZ-21
------------------------
Display Resource Profile and Resource Transaction partial plan views for a 
sequence step, and exercise their Mouse-Right pop-up selections.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open.
  3. No partial plan views are displayed.

Method:
  1. Display "test-seq-1" Sequence Steps View using menu-bar selection
     "Planning Sequence->test-seq-1".
  2. Display "test-seq-1/step<nn>" Resource Profile View by clicking Mouse-Right 
     on the "step<nn>" element of the "SequenceStepsView of test-seq-1", and 
     selecting "Resource Profile View".
  3. Display "test-seq-1/step<nn>" Resource Transaction View by clicking Mouse-Right 
     on the "step<nn>" element of the "SequenceStepsView of test-seq-1", and 
     selecting "Resource Transaction View". Move the view so there is no overlap
     with the Profile View.
  4. Move the mouse into the Resource Profile View's "extent" area and Mouse-Right
     at a certain time scale value and select "Set Time Scale Line/ Snap to
     Resource Transactions".
  5. Move the mouse into the Resource Transaction View's "extent" area and Mouse-Right
     at a certain time scale value and select "Set Time Scale Line/ Snap to
     Resource Profile".
  6. Display "test-seq-1/step<nn>" Token Network View by clicking Mouse-Right 
     on the "step<nn>" element of the "SequenceStepsView of test-seq-1", and 
     selecting "Token Network View".  Open nodes to display a resource transaction
     node.
  7. On the Token Network View, Mouse-Right on an interval token and select
     "Set Active Token". On the Resource Profile View, and then on the Resource
     Transaction View, Mouse-Right on the "extent" background and select "Snap to
     Active Resource" on the Resource Profile View, and "Snap to Active Resource
     Transaction"
  8. On the Token Network View, Mouse-Right on a resource transaction and select
     "Set Active Token". On the Resource Profile View, and then on the Resource
     Transaction View, Mouse-Right on the "extent" background and select "Snap to
     Active Resource Transaction" on the Resource Profile View, and "Snap to Active
     Resource by Transaction".
  9. On both the Resource Profile View and the Resource Transaction View, click
     Mouse-Right on a resource name and select "Open Navigator View".
 10. On the Resource Transaction View, click Mouse-Right on a transaction node
     and select "Open Navigator View".
 11. On both the Resource Profile View and the Resource Transaction View, click 
     Mouse-Right on the background and select "Find by Key".  Enter the id of a 
     resource.
 12. On the Resource Transaction View, click Mouse-Right on the background and 
     select "Find by Key".  Enter the id of a resource transaction.
 13. On the Resource Profile View, click Mouse-Right on the background, over a 
     resource profile and select "Rescale '<resource-name>' Profile".  Enter new
     x, y minumum and maximum values and click "OK".
 14. On the Resource Profile and Resource Transaction Views, click Mouse-Right on 
     the background, and in turn select "Step Backward All Views" and "Step Forward 
     All Views".

Post-conditions:
  1. Method:1 - The SequenceStepsView of test-seq-1 appears.
  2. Method:2 - The Resource Profile View appears with min/max limits and min/max 
     profile lines.
  3. Method:3 - The Resource Transaction View appears with stacked transaction 
     interval rectangles.
  4. Method:4 - A vertical red line appears under the mouse, with a tool tip of
     the time scale value. The Resource Transaction View also has the same vertical
     red line, at the same time scale value.  If necessary, the Resource Transaction 
     View is scrolled to expose the vertical red line.
  5. Method:5 - A vertical red line appears under the mouse, with a tool tip of
     the time scale value. The Resource Profile View also has the same vertical
     red line, at the same time scale value.  If necessary, the Resource Profile
     View is scrolled to expose the vertical red line.
  6. Method:6 - The Token Network View appears with at least one interval token and
     one resource transaction.
  7. Method:7 - In both cases, an advisory dialog appears: "Active Resource Transaction
     Not Found".
  8. Method:8 - In both cases, the view scrolls to expose the appropriate resource
     (Resource Profile View) or appropriate resource transaction (Resource Transaction 
     View).
  9. Method:9 - In both cases, a Navigator View appers, displaying the selected
     resource node with its parent and children nodes, as appropriate.
 10. Method:10 - A Navigator View appers, displaying the selected resource transaction 
     node with its parent and children nodes, as appropriate.
 11. Method:11 - In both cases, the resource name node with the entered id will be 
     highlighted.
 12. Method:12 - The resource transaction node with the entered id will be highlighted.
 13. Method:13 - A new resource profile view for the selected resource will appear with
     the specified x and y min/max values.
 14. Method:14 - the view titles will reflect that the views displayed are both the next
     lowest step (backward), or the next highest step (forward).


PLANVIZ-22
--------------------
Exercise the Zoom View capabilities.

Pre-conditions:
  1. PlanWorks is running.
  2. A project containing a sequence is open.
  3. The "Sequence Steps View" for the sequence is open.
  4. For any sequence step, select Mouse-Right "Open All Views".
  5. Delete the "Resource Profile", "Resource Transaction", "Decision" and
     "DBTransaction" views.

Method:
  1. In the Timeline View, Mouse-Right "Zoom View" on the background,
     and choose a "zoom" factor.  Exercise "Step Forward", "Step Back",
     some Content Filter specifications, background Mouse-Right "Find 
     by Key", and with mouse over a slot node with at least one merged token
     Mouse-Right "Set Active Token".  In the Temporal Extent View,
     Mouse-Right "Snap to Active Token".
  2. In the Temporal Extent View, Mouse-Right "Zoom View" on the background,
     and choose a "zoom" factor.  Exercise "Step Forward", "Step Back",
     some Content Filter specifications, background Mouse-Right "Hide Node
     Labels", "Find by Key", "Set Time Scale Line", and "Snap to Active Token", 
     and with mouse over a temporal node Mouse-Right "Set Active Token".
  3. In the Token Network View, Mouse-Right "Zoom View" on the background,
     and choose a "zoom" factor.  Exercise "Step Forward", "Step Back",
     some Content Filter specifications, background Mouse-Right "Find 
     by Key", and "Snap to Active Token", and with mouse over a token node 
     Mouse-Right "Set Active Token".
  4. In the Constraint Network View, Mouse-Right "ZoomView" on the background,
     and choose a "zoom" factor.  Exercise "Step Forward", "Step Back",
     some Content Filter specifications, background Mouse-Right "Find 
     by Key", and "Snap to Active Token", and with mouse over a token node 
     Mouse-Right "Set Active Token".
  5. In the Navigator View, Mouse-Right "Zoom View" on the background, and
     choose a "zoom" factor.
  6. In the Sequence Steps View, Mouse-Right "Zoom View" on the background,
     and choose a "zoom" factor.


Post-conditions:
  1. Method: 1 - Verify that the functionality and visibility of the "full 
     scale" view is rendered in the Zoom View.  For "Find by Key", the node
     is highlighted with bright green.  For "Set Active Token", in the
      Temporal Extent View, "Snap to Active Token" highlights the active token.
  2. Method: 2 - Verify that the functionality and visibility of the "full 
     scale" view is rendered in the Zoom View.  For "Snap to Active Token" 
     verify that base token is highlighted with bright green, and the merged 
     tokens are highlighted with turquoise.  For "Find by Key", the node is 
     highlighted with bright green.
  3. Method: 3 - Verify that the functionality and visibility of the "full 
     scale" view is rendered in the Zoom View.  For "Snap to Active Token" 
     verify that base token is highlighted with bright green, and the merged 
     tokens are highlighted with turquoise.  For "Find by Key", the node is 
     highlighted with bright green.
  4. Method: 4 - Verify that the functionality and visibility of the "full 
     scale" view is rendered in the Zoom View.  For "Snap to Active Token" 
     verify that base token is highlighted with bright green, and the merged 
     tokens are highlighted with turquoise.  For "Find by Key", the node is 
     highlighted with bright green.
  5. Method: 5 - Verify that the functionality and visibility of the "full 
     scale" view is rendered in the Zoom View.
  6. Method: 6 - Verify that the functionality and visibility of the "full 
     scale" view is rendered in the Zoom View.

Requirements: N/A


PLANVIZ-23
--------------------
Exercise stepping forward and backward for multiple views.

Pre-conditions:
  1. PlanWorks is running.
  2. A project is open.
  3. "Sequence Steps View" is visible for a sequence with multiple steps.

Method:
  1. Open a view for a plan step (s1) that is neither the first nor the last step.
  2. On the Sequence Steps View, select Mouse-Right "Step Forward step nn 
     Active Views".
  3. On the Sequence Steps View, select Mouse-Right "Step Backward step nn 
     Active Views".
  4. On the Sequence Steps View, over the original step, select Mouse-Right
     "Open All Views".  
  5. On the Sequence Steps View, select Mouse-Right "Step Forward step nn 
     Active Views".
  6. On the Sequence Steps View, select Mouse-Right "Step Backward step nn 
     Active Views".
  7. On the Sequence Steps View, over another step (s2), select Mouse-Right
     "Open All Views".
  8. On the Sequence Steps View, select Mouse-Right "Step Forward step s2
     Active Views", and "Step Backward step s1 Active Views".

Post-conditions:
  1. Method:1 - The selected view is visible and correct.  The plan step histogram
     element in the SequenceStepsView is highlighted.
  2. Method:2 - The view is replaced with the same view of the next step in the same 
     position with possibly different size.  The plan step histogram element 
     highlighting is on the next step.
  3. Method:3 - The view is replaces with the same view of the step that was 
     originally opened.  The plan step histogram element highlighting is on the 
     original step.
  4. Method:4 - The other partial plan views appear for step s1. 
  5. Method:5 - The six views are replaced with the same views for the next step 
     in the same positions with possibly different sizes. The plan step histogram 
     element highlighting is on the next step.
  6. Method:6 - The six views are replaced with the same views of the previous step 
     in the same positions with possibly different sizes.  The plan step histogram 
     element highlighting is on the previous step.
  7. Method:7 - All partial plan views appear for step s2.
  8. Method:8 - There is a full set of partial plan views at step s1-1, and another
     complete set of views at step s2+1.

Requirements: N/A


PLANVIZ-24
------------------------
Display Decision partial plan view for a sequence step, and exercise its Mouse-Right 
pop-up selections.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open.
  3. No partial plan views are displayed.

Method:
  1. Display "test-seq-1" Sequence Steps View using menu-bar selection
     "Planning Sequence->test-seq-1".
  2. Display "test-seq-1/step<nn>" Decision View by clicking Mouse-Right 
     on the "step<nn>" element of the "SequenceStepsView of test-seq-1", and 
     selecting "Decision View".
  3. Step the Decision View to a step which has a current decision with choices.
     Open the choice list.
  4. Mouse-Right on the decision node "Object|Resource|Timeline|Token|Variable key=nnn"
     and choose all available view options, one after another.
  5. Mouse-Right on a choice node item and choose all available view options, one
     after another.
  6. Click Mouse-Right on the background, and in turn select "Step Backward All Views" 
     and "Step Forward All Views".

Post-conditions:
  1. Method:1 - The SequenceStepsView of test-seq-1 appears.
  2. Method:2 - The Decision View appears with tree display of the step's decisions,
     the current decision in bold font, highlighted, and scrolled to be viewable.
  3. Method:3 - The current decision choice list should show one of four possible
     choices: Entity ("Entity key=nnn"), Value ("Token key=nnn; activate|merge, etc",
     Domain ("{10 20 30} | [15 25]"), or Close ("Close").
  4. Method:4 - The selected views should open and scroll to the appropriate
     highlighted nodes for the decision key value to be viewed.
  5. Method:5 - The selected views should open and scroll to the appropriate
     highlighted nodes for the choice key value to be viewed.
  6. Method:6 - the view titles will reflect that the views displayed are both the next
     lowest step (backward), or the next highest step (forward).


Requirements: N/A


PLANVIZ-25
------------------------
Exercise data base transaction handling for missing partial plan steps.

Pre-conditions:
  1. PlanWorks is running.
  2. The "test1" project is open.
  3. In another xterm, run gdb on test-seq-1 which will generate at least 75 steps.
     Have "StepsPerWrite=1", "AutoWrite=0", and "WriteFinalStep=1" specified in
     the PartialPlanWriter configuration file.

Method:
  1. Enter into gdb "write step 30", and use "Project->Add Sequence" to add the
     sequence, and "Planning Sequence->test-seq-1" to select the sequence.
  2. Click Mouse-Right over the step 10 item of the SequenceStepsView, and select
     "Open DBTransaction View".
  3. Click Mouse-Right over the step 30 item of the SequenceStepsView, and select
     "Open All Views".
  4. Enter into gdb "write step 60", and use Mouse-Right "Refresh" on the 
     SequenceStepsView background to render the additional plan steps.
  5. Use "File->Exit" to quit PlanWorks.  Delete all the disk files for test-sequence-1.
     Restart PlaWorks, select "No" from the dialog asking whether to delete
     test-sequence-1 from the data base, and select test-sequence-1 from 
     "Planning Sequence".
  6. Click Mouse-Right over the step 10 item of the SequenceStepsView, and select
     "Open DBTransaction View".
  7. Click Mouse-Right over the step 30 item of the SequenceStepsView, and select
     "Open All Views".
  8. Click Mouse-Right over the step 50 and 60 items of the SequenceStepsView.

Post-conditions:
  1. Method:1 - The SequenceStepsView of test-seq-1 appears, with steps 0-29 having
     red dots above each step item, and a yellow dot above the step 30 item.
  2. Method:2 - The only selection available from the popup menu is "Open
     DBTransaction View', and when selected, the view of rendered transactions appears.
  3. Method:3 - In addition to "Open All Views", selections for each individual view
     are available.  All views are rendered.  The yellow dot over step 30 becomes
     green.
  4. Method:4 - The SequenceStepsView will show steps 31-59 with red dots and step
     60 with a yellow dot.
  5. Method:5 - The SequenceStepsView will show steps 0-29 and 31-60 with red dots and
     step 30 with a green dot.
  6. Method:6 - The only selection available from the popup menu is "Open
     DBTransaction View', and when selected, the view of rendered transactions appears.
  7. Method:7 - In addition to "Open All Views", selections for each individual view
     are available.  All views are rendered. 
  8. Method:8 - In both cases, the dialog "No Views Available" will appear.

