Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "VIATRA/Query/DeveloperDocumentation/FeatureSetAndTesting"
(→Features) |
(→Query Explorer) |
||
Line 5: | Line 5: | ||
==== Query Editor ==== | ==== Query Editor ==== | ||
− | ==== | + | ==== Query Explorer ==== |
+ | |||
+ | * Context menu items for resources | ||
+ | |||
+ | |||
+ | |||
+ | Here, you can add your .eiq file to the pattern registry. | ||
+ | |||
+ | * Magic Green Button (depends on context) | ||
+ | ** Load ResourceSet | ||
+ | |||
+ | You can load the whole ResourceSet which is being edited by the editor (this is the default when pressing the green button) | ||
+ | * Load Resource | ||
+ | You can load the Resource of the selected element within the editor which can be done with the appropriate element from the view menu of the green button. | ||
+ | |||
+ | After you opened your instance model with „Sample Reflective Ecore Model Editor”, you can load it with the „Magic Green Button” | ||
+ | * Load pattern(s) | ||
+ | |||
+ | Opening a .eiq file, the magic green button functionality changes. Here we can register our .eiq file. | ||
+ | * Load as model | ||
+ | Or we can load our .eiq file as a model. | ||
+ | |||
+ | * Pattern registry | ||
+ | |||
+ | ** Showing plugin and runtime patterndefinitions | ||
+ | ** Unregister pattern | ||
+ | *** has effect on viewer | ||
+ | *** plugins can not unloaded | ||
+ | ** Show location | ||
+ | *** jump to pattern | ||
+ | ** Checkbox filtering | ||
+ | *** has effect on viewer (checked patterns are in the viewer) | ||
+ | |||
+ | * Result viewer | ||
+ | ** behaviour depends on state of the: | ||
+ | *** patternregistry | ||
+ | *** instance model | ||
+ | *** details/filters | ||
+ | |||
+ | ** Data binding: EMF-IncQuery provides a simple data binding facility that can be used to bind pattern matches to UI elements. | ||
+ | *** @QueryExplorer: the message parameter of the Query explorer annotation defines the label feature of the selected match. | ||
+ | *** @ObservableValue: allows the developer to customize the appearance of a match inside the Details panel. | ||
+ | |||
+ | |||
+ | |||
+ | ** Use-cases: | ||
+ | *** default appearance | ||
+ | *** following changes (modifying the contents of a .eiq file - that was loaded earlier to the Query Explorer - automatically triggers re-loading of the patterns) | ||
+ | *** navigate to source (Show location) | ||
+ | **** to instance model | ||
+ | **** to pattern definition | ||
+ | |||
+ | *Details/Filters | ||
+ | |||
+ | |||
+ | |||
+ | The view of this content is based on the selection inside the tree viewer. If you select a pattern then you can specify filters on the pattern parameters. However, if you select a single match, you can observe the values of the pattern parameters which are data bound to the appropriate model elements thus automatically refreshed upon match changing. | ||
+ | ** choosing a concrete match or matcher | ||
+ | |||
+ | |||
+ | |||
+ | ** input parameter binding (matcher filter) – popup window depends on the type of the parameter (object or not) | ||
+ | |||
+ | *** has effect on viewer | ||
+ | |||
+ | * View menu | ||
+ | |||
+ | |||
+ | |||
+ | ** You can change the way of the pattern registry’s package presentation (flat or hierarchical) in the view menu of the Query Explorer. | ||
+ | ** You can reset the UI | ||
+ | |||
==== [[Preferences]] ==== | ==== [[Preferences]] ==== | ||
==== [[Validation framework]] ==== | ==== [[Validation framework]] ==== |
Revision as of 18:13, 25 March 2015
Contents
Features
EMF-IncQuery UI components (use-cases)
Query Editor
Query Explorer
- Context menu items for resources
Here, you can add your .eiq file to the pattern registry.
- Magic Green Button (depends on context)
- Load ResourceSet
You can load the whole ResourceSet which is being edited by the editor (this is the default when pressing the green button)
- Load Resource
You can load the Resource of the selected element within the editor which can be done with the appropriate element from the view menu of the green button.
After you opened your instance model with „Sample Reflective Ecore Model Editor”, you can load it with the „Magic Green Button”
- Load pattern(s)
Opening a .eiq file, the magic green button functionality changes. Here we can register our .eiq file.
- Load as model
Or we can load our .eiq file as a model.
- Pattern registry
- Showing plugin and runtime patterndefinitions
- Unregister pattern
- has effect on viewer
- plugins can not unloaded
- Show location
- jump to pattern
- Checkbox filtering
- has effect on viewer (checked patterns are in the viewer)
- Result viewer
- behaviour depends on state of the:
- patternregistry
- instance model
- details/filters
- behaviour depends on state of the:
- Data binding: EMF-IncQuery provides a simple data binding facility that can be used to bind pattern matches to UI elements.
- @QueryExplorer: the message parameter of the Query explorer annotation defines the label feature of the selected match.
- @ObservableValue: allows the developer to customize the appearance of a match inside the Details panel.
- Data binding: EMF-IncQuery provides a simple data binding facility that can be used to bind pattern matches to UI elements.
- Use-cases:
- default appearance
- following changes (modifying the contents of a .eiq file - that was loaded earlier to the Query Explorer - automatically triggers re-loading of the patterns)
- navigate to source (Show location)
- to instance model
- to pattern definition
- Use-cases:
- Details/Filters
The view of this content is based on the selection inside the tree viewer. If you select a pattern then you can specify filters on the pattern parameters. However, if you select a single match, you can observe the values of the pattern parameters which are data bound to the appropriate model elements thus automatically refreshed upon match changing.
- choosing a concrete match or matcher
- input parameter binding (matcher filter) – popup window depends on the type of the parameter (object or not)
- has effect on viewer
- View menu
- You can change the way of the pattern registry’s package presentation (flat or hierarchical) in the view menu of the Query Explorer.
- You can reset the UI
Preferences
Validation framework
Viewers
Rete Visualizer
Testing framework
IncQuery Debugger View
Test suites
EMF-IncQuery Test Suites | ||||||
---|---|---|---|---|---|---|
Test project name | Metamodel | Test type | Tested feature | Coverage (the most covered components) | Repository | CI Site |
patternlanguage.emf.tests | no metamodel | unit test | Testing elements of the patternlanguage and parsing | patternlanguage (50%), patternlanguage.emf (50%) | incquery-core-repo | Hudson |
runtime.base.itc.test | no metamodel | unit test | Testing graph implementation and graph traversal algorithms | runtime.base.itc (67%) | incquery-core-repo | Hudson |
runtime.tests | dynamically created | component integration test | Testing matcher and functional dependency (minimal cover) | runtime (30%), patternlanguage (30%), snapshot (30%) | incquery-core-repo | Hudson |
network.tests | network.ecore | component test (performance) | Testing different size of models and investigating performance | runtime (30%) | eiq-examples-repo | - |
school.tests | school.ecore | component integration test | Executing different queries on school model and framework testing | runtime (50%), patternlanguage (50%), snapshot(50%) | eiq-examples-repo | Jenkins |
ecorequery.tests | ecore.ecore | component integration test | Executing different queries on Ecore.ecore model | runtime (40%), patternlanguage (40%) | eiq-examples-repo | Jenkins |
bpmn.tests | only instance model | out of date | out of date | out of date | eiq-examples-repo | - |
derivedTest | derivedModel.ecore | out of date | out of date | out of date | eiq-examples-repo | - |
runtime.base.test | school.ecore (school1.school and school2.school) | unit test | Testing getters for different EMF types (also dynamic EMF models) | runtime.base (70%), runtime.base.itc (50%) | eiq-examples-repo | - |
runtime.runonce.tests | eiqlibrary.ecore | component integration test | Test cases that run different kind of derived features in run-once engine | runtime.matchers (50%), runtime.base (45%), runtime.rete (45%) | examples-repo | - |
bpm.tests | derivedModel.ecore, integrated.ecore, operation.ecore, process.ecore, system.ecore | component integration test | Executing queries on BPMN model and testing IncQueryEngine features | runtime.matchers (50%), runtime.rete(45%) | examples-repo | Jenkins |