diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/qml/qml.pro | 1 | ||||
-rw-r--r-- | tests/auto/qml/qv4regexp/qv4regexp.pro | 8 | ||||
-rw-r--r-- | tests/auto/qml/qv4regexp/tst_qv4regexp.cpp | 53 |
3 files changed, 62 insertions, 0 deletions
diff --git a/tests/auto/qml/qml.pro b/tests/auto/qml/qml.pro index 05d63daedf..7cfddf0eaf 100644 --- a/tests/auto/qml/qml.pro +++ b/tests/auto/qml/qml.pro @@ -73,6 +73,7 @@ PRIVATETESTS += \ qv4assembler \ qv4mm \ qv4identifiertable \ + qv4regexp \ ecmascripttests \ bindingdependencyapi \ v4misc diff --git a/tests/auto/qml/qv4regexp/qv4regexp.pro b/tests/auto/qml/qv4regexp/qv4regexp.pro new file mode 100644 index 0000000000..f4ab6941f5 --- /dev/null +++ b/tests/auto/qml/qv4regexp/qv4regexp.pro @@ -0,0 +1,8 @@ +CONFIG += testcase +TARGET = tst_qv4regexp +macos:CONFIG -= app_bundle + +SOURCES += tst_qv4regexp.cpp + +QT += qml qml-private testlib + diff --git a/tests/auto/qml/qv4regexp/tst_qv4regexp.cpp b/tests/auto/qml/qv4regexp/tst_qv4regexp.cpp new file mode 100644 index 0000000000..cbf9c3e47d --- /dev/null +++ b/tests/auto/qml/qv4regexp/tst_qv4regexp.cpp @@ -0,0 +1,53 @@ +/**************************************************************************** +** +** Copyright (C) 2019 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include <qtest.h> +#include <QtQml/qjsengine.h> + +class tst_qv4regexp : public QObject +{ + Q_OBJECT + +private slots: + void catchJitFail(); +}; + +void tst_qv4regexp::catchJitFail() +{ + QJSEngine engine; + QJSValue result = engine.evaluate(QLatin1String( + "var prevString = \" ok\";" + "var r = /^(\\s*)(([\\)\\]}]?\\s*)*([\\)\\]]\\s*))?;/.exec(prevString);" + "r === null;"), QLatin1String("regexptest.js")); + QVERIFY(result.isBool()); + QVERIFY(result.toBool()); +} + +QTEST_MAIN(tst_qv4regexp) + +#include "tst_qv4regexp.moc" |