QuickTestUtils: Make 'data' subdir configurable
tst_ecmascripttests wants to call it "test262". Task-number: QTBUG-100242 Change-Id: I978171a85fe6ade1cc40129db42ef9a5177fe90f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
This commit is contained in:
parent
7778028f99
commit
5cda89ce03
|
@ -12,18 +12,19 @@ QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
QQmlDataTest *QQmlDataTest::m_instance = nullptr;
|
QQmlDataTest *QQmlDataTest::m_instance = nullptr;
|
||||||
|
|
||||||
QQmlDataTest::QQmlDataTest(const char *qmlTestDataDir, FailOnWarningsPolicy failOnWarningsPolicy) :
|
QQmlDataTest::QQmlDataTest(
|
||||||
m_qmlTestDataDir(qmlTestDataDir),
|
const char *qmlTestDataDir, FailOnWarningsPolicy failOnWarningsPolicy,
|
||||||
|
const char *dataSubDir)
|
||||||
|
: m_qmlTestDataDir(qmlTestDataDir)
|
||||||
#ifdef QT_TESTCASE_BUILDDIR
|
#ifdef QT_TESTCASE_BUILDDIR
|
||||||
m_dataDirectory(QTest::qFindTestData("data", m_qmlTestDataDir, 0, QT_TESTCASE_BUILDDIR)),
|
, m_dataDirectory(QTest::qFindTestData(dataSubDir, m_qmlTestDataDir, 0, QT_TESTCASE_BUILDDIR))
|
||||||
#else
|
#else
|
||||||
m_dataDirectory(QTest::qFindTestData("data", m_qmlTestDataDir, 0)),
|
, m_dataDirectory(QTest::qFindTestData(dataSubDir, m_qmlTestDataDir, 0))
|
||||||
#endif
|
#endif
|
||||||
|
, m_dataDirectoryUrl(m_dataDirectory.startsWith(QLatin1Char(':'))
|
||||||
m_dataDirectoryUrl(m_dataDirectory.startsWith(QLatin1Char(':'))
|
|
||||||
? QUrl(QLatin1String("qrc") + m_dataDirectory + QLatin1Char('/'))
|
? QUrl(QLatin1String("qrc") + m_dataDirectory + QLatin1Char('/'))
|
||||||
: QUrl::fromLocalFile(m_dataDirectory + QLatin1Char('/'))),
|
: QUrl::fromLocalFile(m_dataDirectory + QLatin1Char('/')))
|
||||||
m_failOnWarningsPolicy(failOnWarningsPolicy)
|
, m_failOnWarningsPolicy(failOnWarningsPolicy)
|
||||||
{
|
{
|
||||||
m_instance = this;
|
m_instance = this;
|
||||||
if (m_cacheDir.isValid() && !qEnvironmentVariableIsSet("QML_DISK_CACHE_PATH")) {
|
if (m_cacheDir.isValid() && !qEnvironmentVariableIsSet("QML_DISK_CACHE_PATH")) {
|
||||||
|
@ -41,8 +42,10 @@ QQmlDataTest::~QQmlDataTest()
|
||||||
|
|
||||||
void QQmlDataTest::initTestCase()
|
void QQmlDataTest::initTestCase()
|
||||||
{
|
{
|
||||||
QVERIFY2(!m_dataDirectory.isEmpty(), qPrintable(QLatin1String(
|
QVERIFY2(!m_dataDirectory.isEmpty(), qPrintable(
|
||||||
"'data' directory not found in ") + QFileInfo(QString::fromUtf8(m_qmlTestDataDir)).absolutePath()));
|
QLatin1String("'%1' directory not found in %2").arg(
|
||||||
|
QString::fromUtf8(m_dataSubDir),
|
||||||
|
QFileInfo(QString::fromUtf8(m_qmlTestDataDir)).absolutePath())));
|
||||||
m_directory = QFileInfo(m_dataDirectory).absolutePath();
|
m_directory = QFileInfo(m_dataDirectory).absolutePath();
|
||||||
if (m_dataDirectoryUrl.scheme() != QLatin1String("qrc"))
|
if (m_dataDirectoryUrl.scheme() != QLatin1String("qrc"))
|
||||||
QVERIFY2(QDir::setCurrent(m_directory), qPrintable(QLatin1String("Could not chdir to ") + m_directory));
|
QVERIFY2(QDir::setCurrent(m_directory), qPrintable(QLatin1String("Could not chdir to ") + m_directory));
|
||||||
|
|
|
@ -36,8 +36,10 @@ public:
|
||||||
FailOnWarnings
|
FailOnWarnings
|
||||||
};
|
};
|
||||||
|
|
||||||
QQmlDataTest(const char *qmlTestDataDir,
|
QQmlDataTest(
|
||||||
FailOnWarningsPolicy failOnWarningsPolicy = FailOnWarningsPolicy::DoNotFailOnWarnings);
|
const char *qmlTestDataDir,
|
||||||
|
FailOnWarningsPolicy failOnWarningsPolicy = FailOnWarningsPolicy::DoNotFailOnWarnings,
|
||||||
|
const char *dataSubdir = "data");
|
||||||
virtual ~QQmlDataTest();
|
virtual ~QQmlDataTest();
|
||||||
|
|
||||||
QString testFile(const QString &fileName) const;
|
QString testFile(const QString &fileName) const;
|
||||||
|
@ -68,9 +70,11 @@ public Q_SLOTS:
|
||||||
private:
|
private:
|
||||||
static QQmlDataTest *m_instance;
|
static QQmlDataTest *m_instance;
|
||||||
|
|
||||||
// The directory in which to search for the "data" directory.
|
// The directory in which to search for m_dataSubDir.
|
||||||
const char *m_qmlTestDataDir = nullptr;
|
const char *m_qmlTestDataDir = nullptr;
|
||||||
// The path to the "data" directory, if found.
|
// The subdirectory containing the actual data. Typically "data"
|
||||||
|
const char *m_dataSubDir = nullptr;
|
||||||
|
// The path to m_dataSubDir, if found.
|
||||||
const QString m_dataDirectory;
|
const QString m_dataDirectory;
|
||||||
const QUrl m_dataDirectoryUrl;
|
const QUrl m_dataDirectoryUrl;
|
||||||
QTemporaryDir m_cacheDir;
|
QTemporaryDir m_cacheDir;
|
||||||
|
|
Loading…
Reference in New Issue