aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/debugger/qqmlenginedebugservice
Commit message (Collapse)AuthorAgeFilesLines
* QQmlEngineDebugService: Check QML contexts for validityUlf Hermann2017-11-051-0/+39
| | | | | | | | | We should not operate on invalid QML contexts and once we have established a context to be valid we don't have to check the result of QQmlContextData::get anymore. Change-Id: I9106115ddf925c3572048f1fd334bdfd9a9cfca7 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Qml Debugger: Make sure all objects have a typeUlf Hermann2017-03-311-15/+56
| | | | | | | | | QQmlMetaType::prettyTypeName() does a better job in finding a valid type name for our objects than we can do ourselves. Task-number: QTCREATORBUG-17741 Change-Id: Ie8a192aceb230e73b5295b745987692548aff641 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* QML tooling: Make sure we signal object creation also from QQmlIncubatorUlf Hermann2017-01-111-0/+28
| | | | | | | | | | | | We have to call the QQmlEngineDebugService back from QQmlObjectCreator rather than QQmlComponent, as there are more ways to create an object. We also add the new instance to the global instance list if only the V4 debug service is active, as both QQmlEngineDebugService and QV4DebugService use it. Change-Id: I5dcc71b2e91049bc19ec70d7b87959a61c9b6b75 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* QML debugger: Fix testErik Verbruggen2016-08-031-4/+3
| | | | | | | Use delete[] on a new[]-ed pointer. Change-Id: Ic5721851bdcec284cdd631b81d2cc96b7a1748fc Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Updated license headersJani Heikkinen2016-01-201-17/+12
| | | | | | | | | | | | From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one (in those files which will be under GPL 3 with exceptions) Change-Id: I04760a0801837cfc516d1c7c02d4f503f6bb70b6 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* QmlDebug: Change "macx" to "osx" in tests' .pro filesUlf Hermann2015-11-171-1/+1
| | | | | | | | "macx" is deprecated. Change-Id: Iefdd1aab8a221e39f0651368fd132a842210f58a Reviewed-by: hjk <hjk@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Move QQmlDebugClient into separate static libraryUlf Hermann2015-10-301-17/+19
| | | | | Change-Id: Ib3daf9da2cf6798bd022cfcf54d11e565c9cb4ca Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Properly test services arguments for QQmlDebugServerUlf Hermann2015-10-151-0/+4
| | | | | | | | | So far we have only tested that each service is still functional when the services:<service> argument is given on the command line. This test checks that services which aren't specified are indeed not loaded. Change-Id: Ica935da0337b2215898f65cf283d6e11365432a8 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Remove QT_DISABLE_DEPRECATED_BEFORE=0 from tests not using deprecated API.Friedemann Kleint2015-09-031-1/+0
| | | | | Change-Id: I691b8ddff60b5f16f06d32b379c76e87f44f84a9 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Allow specification of loadable debug services via command lineUlf Hermann2015-08-131-1/+1
| | | | | | | | | We don't want to load the debugger when profiling and vice versa. This makes it easier to prevent unwanted services from getting loaded. Task-number: QTBUG-47623 Change-Id: I28893b6218110274a6d30b27805d89dbb443add3 Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
* Extract minimal interface from QQmlDebugServer and use it.Ulf Hermann2015-07-301-1/+0
| | | | | | | | | | This will allow us to move QQmlDebugServer into a plugin. The new QQmlDebugServer is the interface exposed to connection plugins. The interface exposed to services is renamed to QQmlDebugConnector, as technically it doesn't have to be a "server". Change-Id: Id508b8c0a6960228e889f45a437b73060392db39 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Remove some methods from QQmlDebugServerUlf Hermann2015-07-291-1/+0
| | | | | | | They were only used internally or for redundant checks in the tests. Change-Id: Iaa7d52be030adaa52a07b28fba53bdef9fada879 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Remove static proxy methods from QQmlDebugServiceUlf Hermann2015-07-291-1/+2
| | | | | | | | | They all internally map to one-liners and just add to binary size and complexity. Especially, the most used one, isDebuggingEnabled(), simply checks if there is a QQmlDebugServer::instance(). Change-Id: Ib269928e08506894d933f6696e34ff0d3acb048b Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* tests/qml: Replace Q[TRY]_VERIFY(a == b) by Q[TRY]_COMPARE(a, b).Friedemann Kleint2015-07-291-6/+6
| | | | | | | | | | | | - Replace Q[TRY]_VERIFY(pointer == 0) by Q[TRY]_VERIFY(!pointer). - Replace Q[TRY]_VERIFY(smartPointer == 0) by Q[TRY]_VERIFY(smartPointer.isNull()). - Replace Q[TRY]_VERIFY(a == b) by Q[TRY]_COMPARE(a, b) and add casts where necessary. The values will then be logged should a test fail. Change-Id: I8cc97fd9b48fc789a849e9527c292c4e05accd97 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Get rid of QQmlBoundSignalExpression::ExtraDataLars Knoll2015-06-181-1/+1
| | | | | | | | | | | | | The extra data was only used to delay initialization of the required FunctionObject to the first time evaluate got called. In addition, the constructor using ExtraData was only ever called from the debugger. In that case performance can't be critical, so we can just as well do function object creation at construction time. This saves one pointer in the object. Change-Id: I46ce9aa325f0fa95b5b0e374e9c07d673e454dd4 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Initialize members of tst_QQmlEngineDebugServiceUlf Hermann2015-06-151-0/+2
| | | | | Change-Id: Id9fe7d2bd630bcfe79634b3a4465ec7ad764d18c Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Update copyright headersJani Heikkinen2015-02-121-7/+7
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* Inspector: Do not assert when trying to stream QModelIndexKai Koehne2014-11-071-1/+39
| | | | | | | | | | | | | | | | | | | | Some QVariant's like QModelIndex cannot be streamed in a meaningful way: QDataType::save() will return false for them. However, this leads to a qWarning and Q_ASSERT in QVariant::operator<<(). To prevent this we're calling QDataType::save() manually beforehand. We however throw away the result if it succeeds, and still call QVariant::operator<<() to get the benefits of the QDataStream version handling. The alternatives would be to make QVariant::operator<<() not assert, or blacklist all known types with problems manually. Both seem to be difficult though ... Change-Id: I4f5fe6d5a3a076c24fbc73371a4d12d720de53da Task-number: QTBUG-42438 Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Update license headers and add new licensesJani Heikkinen2014-08-251-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0 Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* Remove redundant QQmlBinding members.Michael Brasser2014-03-111-0/+1
| | | | | | | | | This reduces the size of QQmlBinding by 12 bytes. Task-number: QTBUG-37134 Change-Id: Id55257edec8cee88d863374e8a96d7eebbeaf523 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Compile binding expressions in the QQmlCompilerSimon Hausmann2013-10-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | This is done by re-using the JS code generator from the new compiler. A few bugs were fixed on the way: * The index into the compiledData->runtimeFunctions array is not the same as the function index when they are collected (from the AST), as for example binding expressions may create extra V4IR::Function objects that break the 1:1 mapping. Therefore the JS code gen will return a mapping from incoming function index to V4IR::Module::Function (and thus runtimeFunction) * Binding expressions in the old backend get usually unpacked from their ExpressionStatement node. The reference to that node is lost, and instead of trying to preserve it, we simply synthesize it again. This won't be necessary anymore with the new compiler in the future. * Commit 1c29d63d6045cf9d58cbc0f850de8fa50bf75d09 ensured to always look up locals by name, and so we have to do the same when initializing the closures of nested functions inside binding expressions (in qv4codegen.cpp) * Had to change the Qml debugger service auto-test, which does toString() on a function that is now compiled. Even if we implemented FunctionPrototype::toString() to do what v8 does by extracting the string from the file, it wouldn't help in this test, because it feeds the input from a string instead of a file. * In tst_parserstress we now end up compiling all JS code, which previously was only parsed. This triggers some bugs in the SSA handling. Those tests are skipped and tracked in QTBUG-34047 Change-Id: I44df51085510da0fd3d99eb5f1c7d4d17bcffdcf Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Get rid of the signal expression rewriterSimon Hausmann2013-07-031-1/+1
| | | | | | | | | | | | | This replaces the entire rewriter with more or less: expressionToEval = "(function(<named params here>) { " + expr + " } )" This also fixes crashes at run-time when the signal rewriter was executed from the loader thread and tried to use a v4 identifier hash with the same engine that's also in the main thread. Change-Id: Ib1e4927d330706a593411fbff64ed3da1e23d0e0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix compilation with built-in v4vm JS engineSimon Hausmann2013-04-151-1/+1
| | | | | Change-Id: Ieda9267e296acf6392a5461f4cfb9233a7a409a0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-231-24/+24
| | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Set the Qt API level to compatibility mode in all tests.Thiago Macieira2012-08-011-0/+1
| | | | | | | | | | Qt 5.0 beta requires changing the default to the 5.0 API, disabling the deprecated code. However, tests should test (and often do) the compatibility API too, so turn it back on. Task-number: QTBUG-25053 Change-Id: I6988c2360e9d88916311374a0c910bfc5b607439 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Don't provide typehint in QQmlExpression::evaluate()Chris Adams2012-07-111-2/+2
| | | | | | | | | | | | Previously, the result returned by QQmlExpression::evaluate() was converted from the actual JavaScript result with a default typehint of QList<QObject*>. This commit removes that typehint so that the engine's conversion code will choose the most appropriate return type for the result JavaScript value, instead. Task-number: QTBUG-17082 Change-Id: I368a018b235e9e001b1b92db3699de377748b74f Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Add gui-private to testsGirish Ramakrishnan2012-06-221-1/+1
| | | | | | | QWindowSystemInterface will be marked as QPA API. Change-Id: Id174a24f8432219adf1425efe1eb59cf67d48bb9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Debugger: Clearing the ObjectReferenceHashSimjees Abraham2012-05-303-785/+2
| | | | | | | ObjectReferenceHash is cleared when the Qml file is reloaded. Change-Id: I78da1d88cce2f04fe820f3af14b047cd562e90ed Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
* QQmlEngineDebugService: Property Data of type QVariantAurindam Jana2012-05-251-0/+3
| | | | | | | Send property data of type QVariant to the client. Change-Id: I5a18da18f1347935e4ccaafb05e3a877e73bbede Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
* Debugger: Removing the deleted objects from objectReferenceHashSimjees Abraham2012-05-241-0/+64
| | | | | | | | | | The invalid entries from objectReferenceHash in QQmlDebugService is removed once the Qml object is destroyed. Task-number: QTCREATORBUG_7451 Change-Id: I8d2ccafe81a811ea319f13fd99fbde3c13e6b2be Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
* Removed CONFIG+=parallel_test from suspected parallel-unsafe testsRohan McGovern2012-05-221-2/+0
| | | | | | | | These tests have failed a parallel stress test and may contribute to instability in test runs. Change-Id: I8d82e9df7df6cac374b8b2eda43de8e96b676972 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Qml : Resetting binding correctedSimjees Abraham2012-05-211-15/+46
| | | | | | | | | Resetting the binding for property corrected in case the property is nested (eg: font.bold) Task-number: QTCREATORBUG-6294 Change-Id: I39cca54c17860c4e6df1cf864cc2f70214d50c8f Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
* QQmlDebugService: Fetch Objects for location infoAurindam Jana2012-05-123-0/+134
| | | | | | | | Fetch Objects for given filename, line number and column number. Change-Id: I9a81e4c7fa75faaf87f02453026c5320b7f86003 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* QQmlEngineDebugService: Query ExpressionAurindam Jana2012-05-093-1/+72
| | | | | | | | If the scope object is null or if there no QML context for the scope object, try to use the root context of the engine. Change-Id: I0068ea36f18a179b44791b81a2f6b8ec5423f615 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* Debugger: Fix warnings about declarative_debug in autotestsKai Koehne2012-04-251-1/+3
| | | | | | | declarative_debug is deprecated and will be removed eventually. Change-Id: I1f5a61c91c25e37ff39e9154bcaa3cd74d60e109 Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
* irrelevant qDebug removedSimjees Abraham2012-03-301-1/+0
| | | | | | | | Irrelevant debug statement which gets printed at start of debug session is removed. The same is removed in Auto-tests as well. Change-Id: If8f44950952f08b55ff884c1fe42670108e2369d Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* QmlDebugging: Send parent debug id with object infoAurindam Jana2012-03-291-1/+3
| | | | | Change-Id: Ic197656b90a309d1d9e72b9d6648fee86164c3e1 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* Use minimal javascript expression for bound signalsChris Adams2012-03-291-1/+1
| | | | | | | | | | | Previously, QQmlBoundSignal used QQmlExpression internally. This commit adds a new, more optimal QQmlJavaScriptExpression subclass specifically designed for QQmlBoundSignal, and converts the code to use it instead of QQmlExpression where appropriate. Task-number: QTBUG-24460 Change-Id: I2865a119ce840235e27a7722d8052ca61c265f69 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
* Remove QObject parenting from QQmlAbstractBoundSignal.Michael Brasser2012-03-261-9/+2
| | | | | Change-Id: If549cf57bbac18a986a2a0e63fdc76902d2dae43 Reviewed-by: Chris Adams <christopher.adams@nokia.com>
* Use QQmlAbstractBoundSignal where appropriate.Michael Brasser2012-03-261-3/+3
| | | | | | | Prepare for the addition of another subclass. Change-Id: I340f735503e661d9d735f3316a065f807294921b Reviewed-by: Chris Adams <christopher.adams@nokia.com>
* QmlEngineDebug: Simplify the utility classesAurindam Jana2012-03-194-1747/+776
| | | | | Change-Id: Ie0e1b6e9edd6a09fef565635cc793f8bdb6c42e7 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* QmlEngineDebug: Rename to QmlEngineDebugClient in AutoTestAurindam Jana2012-03-194-17/+1443
| | | | | Change-Id: If20b53d2e47cdc4ed54df0d9360ae1b0566489c6 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* QmlDebugging: Object Tree and States ListAurindam Jana2012-03-191-13/+16
| | | | | | | | | All created instances are stored under the root context. Check for the creation context of the object when building up the tree. Do the same when building up the states list. Change-Id: I8716d9966a61b8f7cb3ad4b7ab5acd4c94b4cd03 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* Debugger: Print informational messages via qDebugKai Koehne2012-03-141-2/+2
| | | | | | | This allows users to use QT_FATAL_WARNINGS. Change-Id: I114825764c841030418c956d23575159157dfd69 Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
* QmlDebugging: Remove QQmlDebugClientAurindam Jana2012-03-092-0/+1247
Remove QQmlDebugClient and relevant classes from the library and move to client code. Change-Id: I6f526b3f0c92970dcad5e5abd8585bb9b406349e Reviewed-by: Kai Koehne <kai.koehne@nokia.com>