aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qjsengine/tst_qjsengine.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2018-03-21 09:46:28 +0100
committerLars Knoll <lars.knoll@qt.io>2018-04-27 08:10:38 +0000
commit5165ae9070d20130c893a1eaf9fe914e689b1fe0 (patch)
tree13e213782c4c6781306242771de0b5e9a4a52e85 /tests/auto/qml/qjsengine/tst_qjsengine.cpp
parent1cfd61f63609c4930db6130d2f63f678c420762d (diff)
Don't fail on pre increment operator after a newline
In some valid cases, the lexer would add an automatic semicolon before the ++/-- operators even if it shouldn't. Change-Id: I2935259fd98a4c7f3f929cc1cecea85f7dde8016 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'tests/auto/qml/qjsengine/tst_qjsengine.cpp')
-rw-r--r--tests/auto/qml/qjsengine/tst_qjsengine.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/auto/qml/qjsengine/tst_qjsengine.cpp b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
index 0e6b77f02b..a57e0b2c79 100644
--- a/tests/auto/qml/qjsengine/tst_qjsengine.cpp
+++ b/tests/auto/qml/qjsengine/tst_qjsengine.cpp
@@ -208,6 +208,8 @@ private slots:
void binaryNumbers();
void octalNumbers();
+ void incrementAfterNewline();
+
signals:
void testSignal();
};
@@ -4192,6 +4194,19 @@ void tst_QJSEngine::octalNumbers()
QVERIFY(result.isError());
}
+void tst_QJSEngine::incrementAfterNewline()
+{
+ QJSEngine engine;
+
+ QJSValue result = engine.evaluate("var x = 0; if (\n++x) x; else -x;");
+ QVERIFY(result.isNumber());
+ QVERIFY(result.toNumber() == 1);
+
+ result = engine.evaluate("var x = 0; if (\n--x) x; else -x;");
+ QVERIFY(result.isNumber());
+ QVERIFY(result.toNumber() == -1);
+}
+
QTEST_MAIN(tst_QJSEngine)
#include "tst_qjsengine.moc"