Library¶
ActionLog¶
- Queue the addition of an ontology to the A0ctionLog * Initialize an ActionLog with an ontology * Modify an ontology and store the changes * Assert that undoing the last action returns the previous state * Assert that undo/redo is invariant * Make sure the queue auto-flushes when exceeding size * Check that addition queue is overwritten when new changes are added and the old changes have not been OK’d. * Assert the invariance of excessive undoes * Assert the invariance of excessive redoes
- Check that ActionLog copes with high workloads
IndexAbstractor¶
- Assert than normalize() normalizes terms correctly.
- Assert that the index is built correctly.
- Test search on various terms
- Test WordNet search and self-initialization.
- Build several AbstractGraphs and check their contents
- Test that get_ontology_file returns the correct kif
- Test that adding multiple ontologies works
- Test that get_completions returns a correct list of terms
Parser¶
wParse¶
- Check that Tokenizer works on single lines
- Check that whole WordNet parses successfully
kifParse¶
- Check invariance of kifparse/kifserialize
- Test that parsing Government.kif works
SyntaxController¶
- Assert that add_ontology() adds an AST equivalent to the one produced by kifparse()
- Assert the invariance of redundant adds
- Assert that adding and then deleting an ontology is invariant
- Check that adding two ontologies works correctly
- Assert that get_ontologies() lists the correct ontologies
- Assert that modifying the ontology works correctly
- Assert that parsing diffs works correctly
- Assert that undo/redo work correctl
WordNet¶
- Check functionality of locate_term
- Check functionality of find_synonym
GUI¶
Text Editor¶
- Open pySUMO
- Open TextEditor
- Open Merge.kif
- Choose Merge.kif
- Collapse Line 288
- Collapse Line 136
- Collapse Line 134
- Uncollapse Line 134
- Uncollapse Line 288
- Collapse all
- Expand all
Graphical Settings¶
- Open pySUMO
- Open TextEditor
- Open Merge.kif
- Choose Merge.kif
- Open GraphWidget
- Open DocumentationWidget
- Open Hierarchy Widget
- Open TextEdiorWidget
Hierarchy Widget¶
Graph Widget¶
- Open pySUMO
- Open GraphWidget
- Open Merge.kif
- Select instance on Variant selector
- Select a root node
- Select a depth (1)
- Open a new ontology to write temporary content to.
- Add a node “bla” in Graph Widget
- Add a node “bla2”
- Add a node “bla” (error)
- Add a relation instance between “bla” and “bla2” (error)
- Change scale
- Choose a valid selector (there was a messagebox)
- Add a relation instance between “bla” and “bla2”
- Undo
- Redo
Documentation Widget¶
- Open pySUMO
- Open Merge.kif
- Open DocumentationWidget
- Switch to the Ontology tab in the DocumentationWidget
- Type subrelation into the search field
- Press Enter
- Open TextEditor
- Select Merge.kif in TextEditor
- Press one of the links listed under “Merge”
- Switch to the WordNet tab in the DocumentationWidget
- Search for ‘Object’
- Search for ‘Table’
MainWindow¶
- Open pySUMO
- Open a new Ontology named “Mondial”
- Open a remote ontology named “Mondial” at location: http://sigmakee.cvs.sourceforge.net/viewvc/sigmakee/KBs/mondial.kif
- Close the ontology named “Mondial” with save and reopen it as local file.
- Add Text Editor Widget
- Add Documentation Widget
- Add Graph Widget
- Add Hierarchy Widget
- Reorder Widgets
- Make a print preview of the ontology “Mondial” from the Text Editor Widget
- Delete the Text Editor Widget
- Make a print preview of the ontology “Mondial” from the Graph Widget
- Add a node and a relation in Graph widget
- Delete the Graph Widget
- Try to update the ontology “Mondial”
- Open ontology properties dialog for “Mondial” and then close it.
- Open Option Dialog and then close it
- Revert the ontology “Mondial”
- Quit pySUMO