summaryrefslogtreecommitdiffstats
path: root/tests/auto/xmlpatternsxqts/test
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/xmlpatternsxqts/test')
-rw-r--r--tests/auto/xmlpatternsxqts/test/test.pro26
-rw-r--r--tests/auto/xmlpatternsxqts/test/tst_suitetest.cpp175
-rw-r--r--tests/auto/xmlpatternsxqts/test/tst_suitetest.h107
-rw-r--r--tests/auto/xmlpatternsxqts/test/tst_xmlpatternsxqts.cpp106
4 files changed, 0 insertions, 414 deletions
diff --git a/tests/auto/xmlpatternsxqts/test/test.pro b/tests/auto/xmlpatternsxqts/test/test.pro
deleted file mode 100644
index a69838a..0000000
--- a/tests/auto/xmlpatternsxqts/test/test.pro
+++ /dev/null
@@ -1,26 +0,0 @@
-load(qttest_p4)
-SOURCES += tst_xmlpatternsxqts.cpp ../../qxmlquery/TestFundament.cpp tst_suitetest.cpp
-
-include(../../xmlpatterns.pri)
-
-contains(QT_CONFIG,xmlpatterns) {
- HEADERS += tst_suitetest.h
- LIBS += -l$$XMLPATTERNS_SDK
-}
-
-# syncqt doesn't copy headers in tools/ so let's manually ensure
-# it works with shadow builds and source builds.
-INCLUDEPATH += $$(QTDIR)/include/QtXmlPatterns/private \
- $$(QTSRCDIR)/include/QtXmlPatterns/private \
- $$(QTSRCDIR)/tools/xmlpatterns \
- $$(QTDIR)/tools/xmlpatterns \
- ../lib/
-
-CONFIG += testlib
-QT += xml
-DESTDIR = ..
-win32 {
- CONFIG(debug, debug|release): DESTDIR = ../debug
- else: DESTDIR = ../release
-}
-TARGET = tst_xmlpatternsxqts
diff --git a/tests/auto/xmlpatternsxqts/test/tst_suitetest.cpp b/tests/auto/xmlpatternsxqts/test/tst_suitetest.cpp
deleted file mode 100644
index 64120c7..0000000
--- a/tests/auto/xmlpatternsxqts/test/tst_suitetest.cpp
+++ /dev/null
@@ -1,175 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the test suite of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the Technology Preview License Agreement accompanying
-** this package.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
-**
-**
-**
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-
-#include <QtTest/QtTest>
-
-#ifdef QTEST_XMLPATTERNS
-
-#include <QProcess>
-#include "TestSuite.h"
-#include "TestSuiteResult.h"
-#include "XMLWriter.h"
-#include "ExitCode.h"
-#include "Worker.h"
-#include "private/qautoptr_p.h"
-#include "tst_suitetest.h"
-
-using namespace QPatternistSDK;
-
-tst_SuiteTest::tst_SuiteTest(const SuiteType suiteType,
- const bool alwaysRun) : m_existingBaseline(inputFile(QLatin1String("Baseline.xml")))
- , m_candidateBaseline(inputFile(QLatin1String("CandidateBaseline.xml")))
- , m_abortRun(!alwaysRun && !QFile::exists(QLatin1String("runTests")))
- , m_suiteType(suiteType)
-{
-}
-
-/*!
- Returns an absolute path to the XQTS catalog, or flags a failure using
- QTestLib's mechanisms.
-
- Finding the location of the catalog is done with `p4 where` such that we don't have
- to care about where it is checked out.
- */
-void tst_SuiteTest::initTestCase()
-{
- catalogPath(m_catalogPath);
-}
-
-/*!
- Just runs the test suite and writes the result to m_candidateBaseline.
- */
-void tst_SuiteTest::runTestSuite() const
-{
- if(m_abortRun)
- QSKIP("The test suite is not available, no tests are run.", SkipAll);
-
- QString errMsg;
- const QFileInfo fi(m_catalogPath);
- const QUrl catalogPath(QUrl::fromLocalFile(fi.absoluteFilePath()));
-
- TestSuite::SuiteType suiteType;
- switch (m_suiteType) {
- case XQuerySuite: suiteType = TestSuite::XQuerySuite;
- case XsltSuite: suiteType = TestSuite::XsltSuite;
- case XsdSuite: suiteType = TestSuite::XsdSuite;
- default: break;
- }
-
- TestSuite *const ts = TestSuite::openCatalog(catalogPath, errMsg, true, suiteType);
-
- QVERIFY2(ts, qPrintable(QString::fromLatin1("Failed to open the catalog, maybe it doesn't exist or is broken: %1").arg(errMsg)));
-
- /* Run the tests, and serialize the result(as according to XQTSResult.xsd) to standard out. */
- TestSuiteResult *const result = ts->runSuite();
- Q_ASSERT(result);
-
- QFile out(m_candidateBaseline);
- QVERIFY(out.open(QIODevice::WriteOnly));
-
- XMLWriter serializer(&out);
- result->toXML(serializer);
-
- delete result;
- delete ts;
-}
-
-void tst_SuiteTest::checkTestSuiteResult() const
-{
- if(m_abortRun)
- QSKIP("This test takes too long time to run on the majority of platforms.", SkipAll);
-
- typedef QList<QFileInfo> QFileInfoList;
-
- const QFileInfo baseline(m_existingBaseline);
- const QFileInfo result(m_candidateBaseline);
- QFileInfoList list;
- list.append(baseline);
- list.append(result);
-
- const QFileInfoList::const_iterator end(list.constEnd());
-
- QEventLoop eventLoop;
- const QPatternist::AutoPtr<Worker> worker(new Worker(eventLoop, m_existingBaseline, result));
-
- /* Passed to ResultThreader so it knows what kind of file it is handling. */
- ResultThreader::Type type = ResultThreader::Baseline;
-
- QProcess::execute(QLatin1String("p4 edit ") + m_existingBaseline);
-
- for(QFileInfoList::const_iterator it(list.constBegin()); it != end; ++it)
- {
- QFileInfo i(*it);
- i.makeAbsolute();
-
- QVERIFY2(i.exists(), qPrintable(QString::fromLatin1("File %1 does not exist.")
- .arg(i.fileName())));
-
- QFile *const file = new QFile(i.absoluteFilePath(), worker.data());
-
- QVERIFY2(file->open(QIODevice::ReadOnly), qPrintable(QString::fromLatin1("Could not open file %1 for reading.")
- .arg(i.fileName())));
-
- ResultThreader *handler = new ResultThreader(eventLoop, file, type, worker.data());
-
- QObject::connect(handler, SIGNAL(finished()), worker.data(), SLOT(threadFinished()));
-
- handler->start(); /* Start the thread. It now parses the file
- and emits threadFinished() when done. */
- type = ResultThreader::Result;
- }
-
- const int exitCode = eventLoop.exec();
-
- QProcess::execute(QLatin1String("p4 revert -a ") + m_existingBaseline);
-
- QCOMPARE(exitCode, 0);
-}
-
-bool tst_SuiteTest::dontRun() const
-{
- return m_abortRun;
-}
-#endif
-
-
-// vim: et:ts=4:sw=4:sts=4
diff --git a/tests/auto/xmlpatternsxqts/test/tst_suitetest.h b/tests/auto/xmlpatternsxqts/test/tst_suitetest.h
deleted file mode 100644
index 22e384a..0000000
--- a/tests/auto/xmlpatternsxqts/test/tst_suitetest.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the test suite of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the Technology Preview License Agreement accompanying
-** this package.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
-**
-**
-**
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-
-#ifndef Q_tst_SuiteTest
-#define Q_tst_SuiteTest
-
-#include <QtCore/QObject>
-#include "../../qxmlquery/TestFundament.h"
-
-/*!
- \class tst_SuiteTest
- \internal
- \since 4.5
- \brief Base class for tst_XmlPatternsXQTS, tst_XmlPatternsXSLTS and tst_XmlPatternsXSDTS.
- */
-class tst_SuiteTest : public QObject
- , private TestFundament
-{
- Q_OBJECT
-
-public:
- enum SuiteType
- {
- XQuerySuite,
- XsltSuite,
- XsdSuite
- };
-
-protected:
- /**
- * @p isXSLT is @c true if the catalog opened is an
- * XSL-T test suite.
- *
- * @p alwaysRun is @c true if the test should always be run,
- * regardless of if the file runTests exists.
- */
- tst_SuiteTest(SuiteType type,
- const bool alwaysRun = false);
-
- /**
- * The reason why we pass in a mutable reference and have void as return
- * value instead of simply returning the string, is that we in some
- * implementations use QTestLib's macros such as QVERIFY, which contains
- * return statements. Yay for QTestLib.
- */
- virtual void catalogPath(QString &write) const = 0;
-
- bool dontRun() const;
-
-private Q_SLOTS:
- void initTestCase();
- void runTestSuite() const;
- void checkTestSuiteResult() const;
-
-private:
- /**
- * An absolute path to the catalog.
- */
- QString m_catalogPath;
- const QString m_existingBaseline;
- const QString m_candidateBaseline;
- const bool m_abortRun;
- const SuiteType m_suiteType;
-};
-
-#endif
-
-// vim: et:ts=4:sw=4:sts=4
diff --git a/tests/auto/xmlpatternsxqts/test/tst_xmlpatternsxqts.cpp b/tests/auto/xmlpatternsxqts/test/tst_xmlpatternsxqts.cpp
deleted file mode 100644
index 890234e..0000000
--- a/tests/auto/xmlpatternsxqts/test/tst_xmlpatternsxqts.cpp
+++ /dev/null
@@ -1,106 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the test suite of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the Technology Preview License Agreement accompanying
-** this package.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
-**
-**
-**
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-
-#include <QtTest/QtTest>
-
-#ifdef QTEST_XMLPATTERNS
-
-#include "tst_suitetest.h"
-
-/*!
- \class tst_XmlPatternsXQTS
- \internal
- \since 4.4
- \brief Tests the actual engine by running W3C's conformance test suite.
- */
-class tst_XmlPatternsXQTS : public tst_SuiteTest
-{
- Q_OBJECT
-public:
- tst_XmlPatternsXQTS();
-public:
- virtual void catalogPath(QString &write) const;
-};
-
-tst_XmlPatternsXQTS::tst_XmlPatternsXQTS() : tst_SuiteTest(tst_SuiteTest::XQuerySuite)
-{
-}
-
-void tst_XmlPatternsXQTS::catalogPath(QString &write) const
-{
- if(dontRun())
- QSKIP("This test takes too long time to run on the majority of platforms.", SkipAll);
-
- QProcess p4;
-
- QStringList arguments;
- arguments << QLatin1String("where")
- << QLatin1String("//depot/autotests/4.4/tests/auto/xmlpatternsxqts/XQTS/XQTSCatalog.xml");
- p4.start(QLatin1String("p4"), arguments);
- QVERIFY(p4.waitForFinished());
- QCOMPARE(p4.exitCode(), 0);
- QCOMPARE(p4.exitStatus(), QProcess::NormalExit);
-
- /* `p4 where' prints for instance:
- *
- * //depot/qt/4.4/tests/auto/xmlpatternsxqts/... //fenglich-englich/qt-4.4/tests/auto/xmlpatternsxqts/... /home/fenglich/dev/autotests/4.4/tests/auto/xmlpatternsxqts/XQTS/XQTSCatalog.xml
- *
- * so we want the last string.
- */
- write = QString::fromLocal8Bit(p4.readAllStandardOutput()).split(QLatin1Char(' ')).last().trimmed();
-
- if(write.isEmpty() || !QFile::exists(write))
- {
- QEXPECT_FAIL("", "//depot/autotests/4.4/tests/auto/xmlpatternsxqts/XQTS/ must be part of the perforce client spec, "
- "checked out at an arbitrary location, for this test to run. The test suite will now be skipped.", Abort);
- QVERIFY(false);
- }
-}
-
-QTEST_MAIN(tst_XmlPatternsXQTS)
-
-#include "tst_xmlpatternsxqts.moc"
-#else
-QTEST_NOOP_MAIN
-#endif
-
-// vim: et:ts=4:sw=4:sts=4