summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRhys Weatherley <rhys.weatherley@nokia.com>2010-12-08 10:30:48 +1000
committerRhys Weatherley <rhys.weatherley@nokia.com>2010-12-08 10:44:24 +1000
commitabc174908ae3451f731064eed7c48b15560e298c (patch)
tree02cc575599accaacbaee51175da8d61211b594df /src
parent03f5c4bdc780ba621a2db09560db3bc50eec1444 (diff)
Run tests that are not bound as resources
Diffstat (limited to 'src')
-rw-r--r--src/quicktestlib/qdeclarativetest.cpp4
-rw-r--r--src/quicktestlib/qdeclarativetest.h26
2 files changed, 26 insertions, 4 deletions
diff --git a/src/quicktestlib/qdeclarativetest.cpp b/src/quicktestlib/qdeclarativetest.cpp
index 3eecb38..1e4c52f 100644
--- a/src/quicktestlib/qdeclarativetest.cpp
+++ b/src/quicktestlib/qdeclarativetest.cpp
@@ -71,13 +71,15 @@ private Q_SLOTS:
void quit() { hasQuit = true; }
};
-int qtest_quick_main(int argc, char **argv, const char *name, qtest_create_viewport createViewport)
+int qtest_quick_main(int argc, char **argv, const char *name, qtest_create_viewport createViewport, const char *sourceDir)
{
QApplication app(argc, argv);
// Determine where to look for the test data. If QTEST_QUICK_SOURCE_DIR
// is set, then use that. Otherwise scan the application's resources.
QString testPath = QString::fromLocal8Bit(qgetenv("QTEST_QUICK_SOURCE_DIR"));
+ if (testPath.isEmpty() && sourceDir)
+ testPath = QString::fromLocal8Bit(sourceDir);
if (testPath.isEmpty())
testPath = QLatin1String(":/");
diff --git a/src/quicktestlib/qdeclarativetest.h b/src/quicktestlib/qdeclarativetest.h
index ef9bb81..b76eb72 100644
--- a/src/quicktestlib/qdeclarativetest.h
+++ b/src/quicktestlib/qdeclarativetest.h
@@ -52,12 +52,14 @@ QT_BEGIN_NAMESPACE
typedef QWidget *(*qtest_create_viewport)();
-Q_TEST_QUICK_EXPORT int qtest_quick_main(int argc, char **argv, const char *name, qtest_create_viewport createViewport);
+Q_TEST_QUICK_EXPORT int qtest_quick_main(int argc, char **argv, const char *name, qtest_create_viewport createViewport, const char *sourceDir);
+
+#ifdef QTEST_QUICK_SOURCE_DIR
#define QTEST_QUICK_MAIN(name) \
int main(int argc, char **argv) \
{ \
- return qtest_quick_main(argc, argv, #name, 0); \
+ return qtest_quick_main(argc, argv, #name, 0, QTEST_QUICK_SOURCE_DIR); \
}
#define QTEST_QUICK_OPENGL_MAIN(name) \
@@ -67,11 +69,29 @@ Q_TEST_QUICK_EXPORT int qtest_quick_main(int argc, char **argv, const char *name
} \
int main(int argc, char **argv) \
{ \
- return qtest_quick_main(argc, argv, #name, name##_create_viewport); \
+ return qtest_quick_main(argc, argv, #name, name##_create_viewport, QTEST_QUICK_SOURCE_DIR); \
}
#else
+#define QTEST_QUICK_MAIN(name) \
+ int main(int argc, char **argv) \
+ { \
+ return qtest_quick_main(argc, argv, #name, 0, 0); \
+ }
+
+#define QTEST_QUICK_OPENGL_MAIN(name) \
+ static QWidget *name##_create_viewport() \
+ { \
+ return new QGLWidget(); \
+ } \
+ int main(int argc, char **argv) \
+ { \
+ return qtest_quick_main(argc, argv, #name, name##_create_viewport, 0); \
+ }
+
+#endif
+
QT_END_NAMESPACE
#endif