Commit Graph

13 Commits

Author SHA1 Message Date
Christian Stenger
4caba7a3dd Perform parsing asynchronously...
...to avoid blocking the ui thread. Parsing will now performed
in a separate thread, except for small changes where this would
create too much overhead.

Change-Id: I1db441594f1684f969bb86c9423c0fb0bcb1a53a
Reviewed-by: Andre Poenitz <andre.poenitz@theqtcompany.com>
2015-02-17 10:26:49 +02:00
Christian Stenger
223b43e9e0 Enable and disable parser on demand
The new approach enables the parser as soon the Tests navigation
widget or the Tests results pane is visible.
If none is displayed parsing will be disabled.

This additionally fixes an issue of not parsing a project
when having a project opened already before triggering the
first Tests navigation widget to become visible.

Change-Id: I7163268d405e07e85814097d65ff34790a98a3d1
Reviewed-by: Andre Poenitz <andre.poenitz@theqtcompany.com>
2015-02-17 10:26:39 +02:00
Christian Stenger
213a687f45 Rework parsing and provide unit test
Handling of parsing has slightly changed. The parser now uses simple
states to be capable of postponing triggered parses if there is already
a parsing in progress. Furthermore the parser now waits for the current
project to be completely scanned.

Change-Id: I6d4968d28194ba8d23d3a0ee6ab454d81a549e67
Reviewed-by: Andre Poenitz <andre.poenitz@theqtcompany.com>
2015-02-17 10:26:28 +02:00
Christian Stenger
2ce99680b2 Decouple code parser and model
Additionally some minor refactorings to increase readability.

Change-Id: I0be120fcedcf31dbb0116d84f0d3c23cf95e7d91
Reviewed-by: Andre Poenitz <andre.poenitz@theqtcompany.com>
2015-02-16 15:43:02 +02:00
Christian Stenger
ca4b66e8ad Refactor TestCodeParser
Change-Id: I5fdb6429e8509468b7a710414af250ea6464d92d
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2015-02-05 08:25:11 +02:00
Christian Stenger
3629aa9044 Fetch current project always before accessing
This fixes two different crashes when TestCodeParser tried
to access m_currentProject, but the object this pointer was
referencing had been deleted already.

Change-Id: Ie59e027394e613a8ef1e4f32f97abed6e8cb007a
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2015-01-28 15:29:23 +02:00
Christian Stenger
d778fc5477 Post-pone parsing for test if CppModelManager is parsing
Change-Id: I7af93eb587e55f7d6e4ee14ed9808ceeb41ed8a3
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2014-12-18 18:32:01 +02:00
Christian Stenger
0fc6d113d1 Update test tree when configuration changes
This takes especially configurations in account when subprojects
are enabled/disabled conditionally.
2014-12-04 13:52:16 +01:00
Christian Stenger
0357b0e98b Add basic support for Qt Quick Test 2014-12-04 13:52:16 +01:00
Christian Stenger
8e4181c3af Use TestInfo as object instead of pointer
No need for having this more complicated than necessary.
2014-12-04 13:52:15 +01:00
Christian Stenger
345b4de47a Rework the parsing and fixing detection of changes
Additionally
* fixed some deletion of pointers
* const correctness
* small refactorings for readability
* better separation of responsibilities
2014-12-04 13:52:15 +01:00
Christian Stenger
44db2be195 Provide basic test runner and output pane 2014-12-04 13:52:15 +01:00
Christian Stenger
2f4139e5d3 Initial commit 2014-12-04 13:52:14 +01:00