summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2009-12-05 11:20:23 (GMT)
committerSimon Hausmann <simon.hausmann@nokia.com>2009-12-05 11:20:33 (GMT)
commit291a26abae4b7e1e4b77baf42964ccb77edf4adf (patch)
treec7dfb42a84295438ef163e4975f6af2d88f649cc /tests/auto
parent1bb5999cdca0a70df3f96d596c83c3cf7c97c5fd (diff)
parent33441e2a611f07207b0b942368aab9010cdf8ab1 (diff)
downloadQt-291a26abae4b7e1e4b77baf42964ccb77edf4adf.zip
Qt-291a26abae4b7e1e4b77baf42964ccb77edf4adf.tar.gz
Qt-291a26abae4b7e1e4b77baf42964ccb77edf4adf.tar.bz2
Merge commit '33441e2a611f07207b0b942368aab9010cdf8ab1' of oslo-staging-1/4.6 into 4.6
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/auto.pro5
-rw-r--r--tests/auto/qscriptextqobject/tst_qscriptextqobject.cpp23
2 files changed, 26 insertions, 2 deletions
diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro
index d5d72a7..92d29ae 100644
--- a/tests/auto/auto.pro
+++ b/tests/auto/auto.pro
@@ -148,7 +148,6 @@ SUBDIRS += \
qfontmetrics \
qftp \
qgetputenv \
- qgl \
qglobal \
qgraphicseffect \
qgraphicseffectsource \
@@ -458,7 +457,9 @@ SUBDIRS += \
rcc \
windowsmobile
-!wince*:SUBDIRS += $$Q3SUBDIRS
+contains(QT_CONFIG,opengl):SUBDIRS += qgl
+
+contains(QT_CONFIG,qt3support):!wince*:SUBDIRS += $$Q3SUBDIRS
contains(QT_CONFIG, OdfWriter):SUBDIRS += qzip qtextodfwriter
mac: {
diff --git a/tests/auto/qscriptextqobject/tst_qscriptextqobject.cpp b/tests/auto/qscriptextqobject/tst_qscriptextqobject.cpp
index 44adf7e..a47cabb 100644
--- a/tests/auto/qscriptextqobject/tst_qscriptextqobject.cpp
+++ b/tests/auto/qscriptextqobject/tst_qscriptextqobject.cpp
@@ -1630,6 +1630,29 @@ void tst_QScriptExtQObject::connectAndDisconnect()
m_myObject->emitMySignalWithVariantArg(123);
QCOMPARE(m_engine->evaluate("gotSignal").toBoolean(), true);
QCOMPARE(m_engine->evaluate("signalArgs.length").toNumber(), 1.0);
+ QCOMPARE(m_engine->evaluate("signalArgs[0]").toNumber(), 123.0);
+ QVERIFY(m_engine->evaluate("myObject.mySignalWithVariantArg.disconnect(myHandler)").isUndefined());
+
+ // signal with argument type that's unknown to the meta-type system
+ m_myObject->clearConnectedSignal();
+ QVERIFY(m_engine->evaluate("myObject.mySignalWithScriptEngineArg.connect(myHandler)").isUndefined());
+ QCOMPARE(m_myObject->connectedSignal().constData(), SIGNAL(mySignalWithScriptEngineArg(QScriptEngine*)));
+ m_engine->evaluate("gotSignal = false");
+ QTest::ignoreMessage(QtWarningMsg, "QScriptEngine: Unable to handle unregistered datatype 'QScriptEngine*' when invoking handler of signal MyQObject::mySignalWithScriptEngineArg(QScriptEngine*)");
+ m_myObject->emitMySignalWithScriptEngineArg(m_engine);
+ QCOMPARE(m_engine->evaluate("gotSignal").toBoolean(), true);
+ QCOMPARE(m_engine->evaluate("signalArgs.length").toNumber(), 1.0);
+ QVERIFY(m_engine->evaluate("signalArgs[0]").isUndefined());
+ QVERIFY(m_engine->evaluate("myObject.mySignalWithScriptEngineArg.disconnect(myHandler)").isUndefined());
+
+ // signal with QVariant arg: argument conversion should work
+ m_myObject->clearConnectedSignal();
+ QVERIFY(m_engine->evaluate("myObject.mySignalWithVariantArg.connect(myHandler)").isUndefined());
+ QCOMPARE(m_myObject->connectedSignal().constData(), SIGNAL(mySignalWithVariantArg(QVariant)));
+ m_engine->evaluate("gotSignal = false");
+ m_myObject->emitMySignalWithVariantArg(123);
+ QCOMPARE(m_engine->evaluate("gotSignal").toBoolean(), true);
+ QCOMPARE(m_engine->evaluate("signalArgs.length").toNumber(), 1.0);
QVERIFY(m_engine->evaluate("signalArgs[0]").isNumber());
QCOMPARE(m_engine->evaluate("signalArgs[0]").toNumber(), 123.0);
QVERIFY(m_engine->evaluate("myObject.mySignalWithVariantArg.disconnect(myHandler)").isUndefined());