From 21a4759ba82212097a0d76dcf341b5e8e497d057 Mon Sep 17 00:00:00 2001 From: Jedrzej Nowacki Date: Fri, 29 Oct 2010 15:07:05 +0200 Subject: Refactor tst_QScriptValue::isRegExp The test should use _data function. It should be easier to maintain that code. Reviewed-by: Kent Hansen --- tests/auto/qscriptvalue/tst_qscriptvalue.cpp | 32 +++++++++++++++++++--------- tests/auto/qscriptvalue/tst_qscriptvalue.h | 1 + 2 files changed, 23 insertions(+), 10 deletions(-) diff --git a/tests/auto/qscriptvalue/tst_qscriptvalue.cpp b/tests/auto/qscriptvalue/tst_qscriptvalue.cpp index 44318b4..47ff9d7 100644 --- a/tests/auto/qscriptvalue/tst_qscriptvalue.cpp +++ b/tests/auto/qscriptvalue/tst_qscriptvalue.cpp @@ -1711,18 +1711,30 @@ void tst_QScriptValue::isError() QVERIFY(!eng.evaluate("new Object()").isError()); } +void tst_QScriptValue::isRegExp_data() +{ + newEngine(); + + QTest::addColumn("value"); + QTest::addColumn("regexp"); + + QTest::newRow("/foo/") << engine->evaluate("/foo/") << true; + QTest::newRow("[]") << engine->evaluate("[]") << false; + QTest::newRow("{}") << engine->evaluate("{}") << false; + QTest::newRow("globalObject") << engine->globalObject() << false; + QTest::newRow("invalid") << QScriptValue() << false; + QTest::newRow("number") << QScriptValue(123) << false; + QTest::newRow("bool") << QScriptValue(false) << false; + QTest::newRow("null") << engine->nullValue() << false; + QTest::newRow("undefined") << engine->undefinedValue() << false; +} + void tst_QScriptValue::isRegExp() { - QScriptEngine eng; - QVERIFY(eng.evaluate("/foo/").isRegExp()); - QVERIFY(!eng.evaluate("[]").isRegExp()); - QVERIFY(!eng.evaluate("{}").isRegExp()); - QVERIFY(!eng.globalObject().isRegExp()); - QVERIFY(!QScriptValue().isRegExp()); - QVERIFY(!QScriptValue(123).isRegExp()); - QVERIFY(!QScriptValue(false).isRegExp()); - QVERIFY(!eng.nullValue().isRegExp()); - QVERIFY(!eng.undefinedValue().isRegExp()); + QFETCH(QScriptValue, value); + QFETCH(bool, regexp); + + QCOMPARE(value.isRegExp(), regexp); } static QScriptValue getter(QScriptContext *ctx, QScriptEngine *) diff --git a/tests/auto/qscriptvalue/tst_qscriptvalue.h b/tests/auto/qscriptvalue/tst_qscriptvalue.h index 239f668..300ce61 100644 --- a/tests/auto/qscriptvalue/tst_qscriptvalue.h +++ b/tests/auto/qscriptvalue/tst_qscriptvalue.h @@ -100,6 +100,7 @@ private slots: void isDate(); void isDate_data(); void isError(); + void isRegExp_data(); void isRegExp(); void lessThan(); -- cgit v0.12