Fixed parserstress test.
authoraxis <qt-info@nokia.com>
Mon, 21 Mar 2011 11:55:15 +0000 (12:55 +0100)
committeraxis <qt-info@nokia.com>
Wed, 27 Apr 2011 10:06:02 +0000 (12:06 +0200)
tests/auto/declarative/parserstress/parserstress.pro
tests/auto/declarative/parserstress/tst_parserstress.cpp

index 6ef2432..cbc5e18 100644 (file)
@@ -4,12 +4,17 @@ macx:CONFIG -= app_bundle
 
 SOURCES += tst_parserstress.cpp
 
-symbian: {
-    importFiles.files = ..\\..\\qscriptjstestsuite\\tests
-    importFiles.path = .
-    DEPLOYMENT += importFiles
-} else {
-    DEFINES += SRCDIR=\\\"$$PWD\\\"
+!isEmpty(QT.script.sources) {
+    symbian: {
+        importFiles.files = $$QT.script.sources\\..\\..\\tests\\auto\\qscriptjstestsuite\\tests
+        importFiles.path = .
+        DEPLOYMENT += importFiles
+        DEFINES += TESTDATADIR=tests
+        DEFINES += SRCDIR=.
+    } else {
+        DEFINES += TESTDATADIR=\\\"$$QT.script.sources/../../tests/auto/qscriptjstestsuite/tests\\\"
+        DEFINES += SRCDIR=\\\"$$PWD\\\"
+    }
 }
 
 CONFIG += parallel_test
index c0a01df..19ff25a 100644 (file)
 #include <QDir>
 #include <QFile>
 
-#ifdef Q_OS_SYMBIAN
-// In Symbian OS test data is located in applications private dir
-#define SRCDIR "."
-#endif
-
 class tst_parserstress : public QObject
 {
     Q_OBJECT
@@ -91,25 +86,23 @@ QStringList tst_parserstress::findJSFiles(const QDir &d)
 
 void tst_parserstress::ecmascript_data()
 {
-#ifdef Q_OS_SYMBIAN    
-    QDir dir("tests");
-#else
-    QDir dir(SRCDIR);
-    dir.cdUp();
-    dir.cdUp();
-    dir.cd("qscriptjstestsuite");
-    dir.cd("tests");
-#endif
+#ifdef TESTDATADIR
+    QDir dir(TESTDATADIR);
     QStringList files = findJSFiles(dir);
 
     QTest::addColumn<QString>("file");
     foreach (const QString &file, files) {
         QTest::newRow(qPrintable(file)) << file;
     }
+#endif
 }
 
 void tst_parserstress::ecmascript()
 {
+#ifndef TESTDATADIR
+    QSKIP("Needs QtScript sources", SkipAll);
+#else
+
     QFETCH(QString, file);
 
     QFile f(file);
@@ -157,6 +150,7 @@ void tst_parserstress::ecmascript()
 
         QVERIFY(!component.isError());
     }
+#endif // ifdef TESTDATADIR
 }