aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qjsengine/tst_qjsengine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/qml/qjsengine/tst_qjsengine.cpp')
-rw-r--r--tests/auto/qml/qjsengine/tst_qjsengine.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/auto/qml/qjsengine/tst_qjsengine.cpp b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
index 4f2e6f1866..a5316dce21 100644
--- a/tests/auto/qml/qjsengine/tst_qjsengine.cpp
+++ b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
@@ -243,6 +243,7 @@ private slots:
void throwError();
void throwErrorObject();
void returnError();
+ void catchError();
void mathMinMax();
void importModule();
@@ -4810,6 +4811,19 @@ void tst_QJSEngine::returnError()
QVERIFY(!result.property("stack").isUndefined());
}
+void tst_QJSEngine::catchError()
+{
+ QJSEngine engine;
+ QVERIFY(!engine.hasError());
+ engine.throwError(QJSValue::GenericError, "some error");
+ QVERIFY(engine.hasError());
+ const QJSValue error = engine.catchError();
+ QVERIFY(error.isError());
+ QCOMPARE(error.errorType(), QJSValue::GenericError);
+ QCOMPARE(error.property("message").toString(), "some error");
+ QVERIFY(!engine.hasError());
+}
+
QJSValue tst_QJSEngine::throwingCppMethod1()
{
qjsEngine(this)->throwError("blub");