diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-03-21 09:46:28 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-04-27 08:10:38 +0000 |
commit | 5165ae9070d20130c893a1eaf9fe914e689b1fe0 (patch) | |
tree | 13e213782c4c6781306242771de0b5e9a4a52e85 /tests/auto/qml/qjsengine/tst_qjsengine.cpp | |
parent | 1cfd61f63609c4930db6130d2f63f678c420762d (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.cpp | 15 |
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" |