wiki:PromotExplorerTest

Version 24 (modified by mirschel, 15 years ago) (diff)

--

ProMoT Visual Explorer Detailed Tests

Setup A:
Model type: 'Logical Model'.
Test to be applied: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12-16, 17-21, 22-25, 26-27, 28, 29, 30
Start ProMoT server and GUI -> load the logical library Promot/trunk/promot/kb/SignalTransd/structure/struct-ana-library.mdl -> load the logical toymodel from tutorial Promot/trunk/promot/kb/SignalTransd/structure/toymodel_tutorial/LOAD_toymodel.mdl -> Open the Visual Explorer for the browser tree node 'struct-model' --> 'toymodel' --> 'whole_model' by right mouse click --> context menu --> Visual Explorer.

Setup B:
Model type: 'Dynamical Model'.
Tests to be applied: 2, 5, 8, 9, 10, 29
Start ProMoT server and GUI -> load Promot/trunk/promot/kb/practical-bio/LOAD.mdl which includes the library (reduced-library) for dynamic modeling -> Open the Visual Explorer for the browser tree node 'dynamic-model' --> 'mapk_modules' --> 'mapkc' by right mouse click --> context menu --> Visual Explorer.

Setup C:
Model type: 'SBML Model'.
Tests to be applied: 2, 5, 8, 9, 10, 29
Start ProMoT server and GUI -> import a biomodels.org model (e.g. BIOMD0000000001.xml) -> Open the Visual Explorer for the browser tree node 'sbml-model' --> 'name of model' by right mouse click --> context menu --> Visual Explorer.

Setup D:
Model type: 'Unknown Model'.
Tests to be applied: 2, 5, 8, 9, 10, 29
Start ProMoT server and GUI -> load Promot/trunk/promot/kb/practical/LOAD.mdl which loads the 'tank' model -> Open the Visual Explorer for the browser tree node 'tank-plant' --> 'mc-tank-plant' by right mouse click --> context menu --> Visual Explorer.

JUnit Tests

  1. Parsing of delimited text file
    Promot/trunk/promot/src/gui/org/mpg/dcts/promot/viznav/test/DelimitedTextReaderTest.java
    Check correct parsing of delimited text file, delimiter is <TAB>
  1. Import node and edge attributes
    Promot/trunk/promot/src/gui/org/mpg/dcts/promot/viznav/test/AttributeReaderTest.java
    Check that two external files (edge attributes, node attributes) are loaded properly. The attributes should be mapped to the existing nodes and edges in the graph correctly.

  1. Parsing and calculation of logical parameter 'Multiple Level'
    Promot/trunk/promot/src/gui/org/mpg/dcts/promot/viznav/test/LogicalParameterMultipleLevelTest.java
    Check that the logical parameter 'Multiple Level' is correctly parsed and calculated
  1. Scenarios: Logical Network Parser
    Promot/trunk/promot/src/gui/org/mpg/dcts/promot/viznav/test/LogicalNetworkParserTest.java
    Check that part of the logical network parser, especially parsing of DUMMY element and NOT element.
  1. Load global scenarios
    Promot/trunk/promot/src/gui/org/mpg/dcts/promot/viznav/test/VisualPropertyTest.java
    Check that the global scenario file (.PromotVizScenarios) is at the given location and calculators are loaded properly from the file. Test is independent of the model type.
  1. Calculation of 'Interaction Distance'
    Promot/trunk/promot/src/gui/org/mpg/dcts/promot/viznav/test/InteractionDistanceTest.java
    Check that the interaction distance of elements in the network model based on a focused element is calculated properly

Tests

  1. Import/export layout
    Save layout (Model --> Export --> Export Layout) in a file (e.g. layout.graphml) in the home directory, change editing mode to 'Editing', move the compounds 'lig1' and 'ph2' slightly, move the edge handle of inhibition edge 'r1-->not_r1_r2_a2' slightly, import layout (Model --> Import --> Import Layout) from a file (e.g. layout.graphml). The positions of the compounds 'lig1' and 'ph2' and edge handle of inhibition edge 'r1-->not_r1_r2_a2' should be the same as before.
    --> TODO: use JUnit test.

  1. Export graphics
    Open export dialog (Model --> Export --> Export Graphics), a dialog should appear with six options for formats (eps, ps, svg, emf, png, gif), export the view with each of the formats using default options. The results should look like the view in the Visual Explorer.

  1. Export logical model
    Output logical model with default options, click button 'Generate Model', export should perform without errors, check resulting files, click button 'Close' should exit the dialog.
    --> TODO: use JUnit test.

  1. Edit scenarios, new/copy/rename/remove/mappings

  1. Load user-defined (local) scenarios
    Load user-defined scenarios from USER_HOME. Check console output. Two cases:
    1. No file '.PromotVizScenarios' in USER_HOME. When open the Visual Explorer a default scenario 'Default (Editable)' is created. Check 'Edit Scenarios'-dialog (Edit --> Edit Scenario...).
    2. File '.PromotVizScenarios' in USER_HOME exists. Check 'Edit Scenarios'-dialog (Edit --> Edit Scenario...). In the dialog local scenarios (indicated in the name by a prefixed [L]) have to be present.
  1. Save user-defined (local) scenarios (to USER_HOME)
    Save user-defined scenarios to USER_HOME. Check console output. Check file '.PromotVizScenarios' in the USER_HOME of existence and correct time stamp.
  1. Exit with/without dialog
    Closing the visual explorer requires to check the local scenarios. If the initial local scenarios are equal to the current local scenarios (no changes) the Visual Explorer exit promptly. If the initial local scenarios are not equal to the current local scenarios (changes are made during exploration) a dialog is opened in order to make sure the user really wants to save the local scenarios (options: Save, Discard, Close). Button 'Save' saves the scenarios as described in (9), button 'Discard' just close the dialog, button 'Close' exits the Visual Explorer with no saving.

Visual inspection

  1. Orthogonal layout
    Apply an orthogonal layout to the network, all edges represented by polylines (not straight lines) must be drawn in an orthogonal style.

  1. Grid layer on/off
    A grid overlaying the entire canvas should appear/disappear by switching option on/off.

  1. Squiggle layer on/off
    With option on and pressed left mouse button, a line is drawn, release mouse button should stop drawing, drawings can be switched on/off.

  1. Status layer on/off
    With option on, a text box appears in the right lower corner showing the name of the current scenario (default: Logical Scenario) and the current navigation mode (default: Hierarchy Zoom), display can be switched on/off.

  1. Overview layer on/off
    With option on, a overview window of the entire canvas appears in the right lower corner, can be switched on/off.

  1. Legend layer for Visual Scenarios on/off/correct mappings
    A window should appear showing the mappings used in the current visual scenario. Press the button 'Close' to exit the dialog, can be switched on/off.
  1. Navigation mode: Interactive Zoom
    Select navigation mode 'Interactive Zoom', in the status layer the current mode should be entitled 'Interactive Zoom':
    • hold down left button + drag right should zoom into the network
    • hold down left button + drag left should zoom out of the network
    • hold down left button + ctrl + drag should move (pan) the entire network.
  1. Navigation mode: Hierarchy Zoom
    Select navigation mode 'Hierarchy Zoom', in the status layer the current mode should be entitled 'Hierarchy Zoom':
    • click left button on entity should zoom to focused entity in hierarchical steps
    • click left button + shift should zoom out the whole network to fit on screen
    • hold down left button + ctrl + drag should move (pan) the entire network.
  1. Navigation mode: Fisheye Zoom
    Select navigation mode 'Fisheye Zoom', in the status layer the current mode should be entitled 'Fisheye Zoom':
    • click left button on entity should enlarge entity and shrink all other visible entities
    • click left button on entity + shift should shrink entity and enlarge all other visible entities
    • hold down left button + ctrl + drag should move (pan) the entire network.
  1. Navigation mode: Focus Zoom
    Select navigation mode 'Focus Zoom', in the status layer the current mode should be entitled 'Focus Zoom':
    • click left button on entity should perform a minimal zoom to focused entity
    • hold down left button + ctrl + drag should move (pan) the entire network.
  1. Editing mode: Editing (move/resize all/resize border/edit edge handles)
    Select navigation mode 'Editing', in the status layer the current mode should be entitled 'Editing':
    • click left button on node + drag should move the node inside bounds of parent node
    • click left button on node handle + drag should resize all components of node
    • click left button on node handle + shift + drag should resize only border/boundary of node
    • click left button on edge handle + drag should move edge handle
    • click right button on edge for context menu --> Add edge handle should add a edge handle
    • click right button on edge for context menu --> Remove edge handle should delete edge handle
    • click right button on edge for context menu --> Remove all edge handles should delete all edge handles on the link
    • hold down left button + ctrl + drag should move (pan) the entire network.
  1. Show (all) icons on/off
    With option on, all icons are shown also for complex modules, can be toggled on/off.
  1. Show (all) details on/off
    With option off, the content (nodes, edges, icons, labels) disappears, can be toggled on/off.
  1. Show (all) labels on/off
    With option off, labels of all nodes (also in hierarchy) disappear, can be toggled on/off.
  1. Show (all) label boxes on/off
    With option on, all label boxes of nodes (also in hierarchy) are drawn, option is disabled if (24) is off, can be toggled on/off.
  1. Edge: Zoom to source
    Choose navigation mode 'Hierarchy Zoom', click on compound 'cell' (automatic zoom to compound 'cell'), right click on reaction edge between compound 'k3p1' and compound 'ph1', choose 'Zoom To Source' from context menu (automatic zoom to compound 'k3p1'), compound 'k3p1' should be enlarged.
  1. Edge: Zoom to target
    Choose navigation mode 'Hierarchy Zoom', click on compound 'cell' (automatic zoom to compound 'cell'), right click on reaction edge between compound 'k3p1' and compound 'ph1', choose 'Zoom To Target' from context menu (automatic zoom to compound 'ph1'), compound 'ph1' should be enlarged.
  1. Edge: Zoom along Edge
    Choose navigation mode 'Hierarchy Zoom', click on compound 'cell' (automatic zoom to compound 'cell'), right click on reaction edge between compound 'k3p1' and compound 'ph1', choose 'Zoom along Edge' from context menu (automatic zoom to compound 'ph1'), compound 'ph1' should be enlarged.
  1. Search for node/edge in network
    Search for the compound 'r2' (attribute == PromotName, Case sensitive == on, Display options == Highlight, Navigation Options == Hierarchy Zoom), click button 'Search', compound 'r2' is emphasized by 'Global Highlight Node Color' (default red color) applied on the node border, display should zoom to compound 'r2', click button 'Clear' should remove the string input in the dialog and the highlight border color.

    Search for the edges with interaction type 'inhibition' (attribute == InteractionType, Case sensitive == off, Display options == Highlight, Navigation Options == None), click button 'Search', edges 'ph1-->a1_not_ph1_k1' and 'r1-->not_r1_r2_a2' are emphasized by 'Global Highlight Edge Color' (default red color) applied on the edge color, no zoom should be applied, click button 'Clear' should remove the string input in the dialog and the highlight border color.
  1. Check model type
    Check the correct interpretation of the loaded model. Four cases:
    1. Using Setup A, a logical model should be loaded, in the 'Statistics' dialog the model type should be 'Logical Model', default scenario should be 'Logical Network'.
    2. Using Setup B, a dynamical model should be loaded, in the 'Statistics' dialog the model type should be 'Dynamical Model', default scenario should be 'Visual Editor'.
    3. Using Setup C, a SBML model should be loaded, in the 'Statistics' dialog the model type should be 'SBML Model', default scenario should be 'SBML Model'.
    4. Using Setup D, a unknown model type should be loaded, in the 'Statistics' dialog the model type should be 'Unknown Model', default scenario should be 'Visual Editor'.

Not tested / not critical / trivial

  1. Statistics dialog
  2. Options (General, Rendering, Navigation, Scenarios)
  3. Legend for modes
  4. Legend for current visual scenario