diff options
Diffstat (limited to 'tests/auto/declarative/qdeclarativefolderlistmodel/tst_qdeclarativefolderlistmodel.cpp')
-rw-r--r-- | tests/auto/declarative/qdeclarativefolderlistmodel/tst_qdeclarativefolderlistmodel.cpp | 179 |
1 files changed, 0 insertions, 179 deletions
diff --git a/tests/auto/declarative/qdeclarativefolderlistmodel/tst_qdeclarativefolderlistmodel.cpp b/tests/auto/declarative/qdeclarativefolderlistmodel/tst_qdeclarativefolderlistmodel.cpp deleted file mode 100644 index 708f3c90bb..0000000000 --- a/tests/auto/declarative/qdeclarativefolderlistmodel/tst_qdeclarativefolderlistmodel.cpp +++ /dev/null @@ -1,179 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** Contact: http://www.qt-project.org/ -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** 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. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 as published by the Free Software Foundation -** and appearing in the file LICENSE.GPL included in the packaging of this -** file. Please review the following information to ensure the GNU General -** Public License version 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -#include <qtest.h> -#include <QtTest/QSignalSpy> -#include <QtDeclarative/qdeclarativeengine.h> -#include <QtDeclarative/qdeclarativecomponent.h> -#include <QtCore/qdir.h> -#include <QtCore/qfile.h> -#include <QtCore/qabstractitemmodel.h> -#include <QDebug> -#include "../../shared/util.h" - -// From qdeclarastivefolderlistmodel.h -const int FileNameRole = Qt::UserRole+1; -const int FilePathRole = Qt::UserRole+2; -enum SortField { Unsorted, Name, Time, Size, Type }; - -class tst_qdeclarativefolderlistmodel : public QDeclarativeDataTest -{ - Q_OBJECT -public: - tst_qdeclarativefolderlistmodel() : removeStart(0), removeEnd(0) {} - -public slots: - void removed(const QModelIndex &, int start, int end) { - removeStart = start; - removeEnd = end; - } - -private slots: - void basicProperties(); - void resetFiltering(); - void refresh(); - -private: - void checkNoErrors(const QDeclarativeComponent& component); - QDeclarativeEngine engine; - - int removeStart; - int removeEnd; -}; - -void tst_qdeclarativefolderlistmodel::checkNoErrors(const QDeclarativeComponent& component) -{ - // Wait until the component is ready - QTRY_VERIFY(component.isReady() || component.isError()); - - if (component.isError()) { - QList<QDeclarativeError> errors = component.errors(); - for (int ii = 0; ii < errors.count(); ++ii) { - const QDeclarativeError &error = errors.at(ii); - QByteArray errorStr = QByteArray::number(error.line()) + ":" + - QByteArray::number(error.column()) + ":" + - error.description().toUtf8(); - qWarning() << errorStr; - } - } - QVERIFY(!component.isError()); -} - -void tst_qdeclarativefolderlistmodel::basicProperties() -{ - QDeclarativeComponent component(&engine, testFileUrl("basic.qml")); - checkNoErrors(component); - - QAbstractListModel *flm = qobject_cast<QAbstractListModel*>(component.create()); - QVERIFY(flm != 0); - - flm->setProperty("folder", dataDirectoryUrl()); - QTRY_COMPARE(flm->property("count").toInt(),4); // wait for refresh - QCOMPARE(flm->property("folder").toUrl(), dataDirectoryUrl()); - QCOMPARE(flm->property("parentFolder").toUrl(), QUrl::fromLocalFile(QDir(directory()).canonicalPath())); - QCOMPARE(flm->property("sortField").toInt(), int(Name)); - QCOMPARE(flm->property("nameFilters").toStringList(), QStringList() << "*.qml"); - QCOMPARE(flm->property("sortReversed").toBool(), false); - QCOMPARE(flm->property("showDirs").toBool(), true); - QCOMPARE(flm->property("showDotAndDotDot").toBool(), false); - QCOMPARE(flm->property("showOnlyReadable").toBool(), false); - QCOMPARE(flm->data(flm->index(0),FileNameRole).toString(), QLatin1String("basic.qml")); - QCOMPARE(flm->data(flm->index(1),FileNameRole).toString(), QLatin1String("dummy.qml")); - - flm->setProperty("folder",QUrl::fromLocalFile("")); - QCOMPARE(flm->property("folder").toUrl(), QUrl::fromLocalFile("")); -} - -void tst_qdeclarativefolderlistmodel::resetFiltering() -{ - // see QTBUG-17837 - QDeclarativeComponent component(&engine, testFileUrl("resetFiltering.qml")); - checkNoErrors(component); - - QAbstractListModel *flm = qobject_cast<QAbstractListModel*>(component.create()); - QVERIFY(flm != 0); - - connect(flm, SIGNAL(rowsRemoved(const QModelIndex&,int,int)), - this, SLOT(removed(const QModelIndex&,int,int))); - - flm->setProperty("folder", testFileUrl("resetfiltering")); - QTRY_COMPARE(flm->property("count").toInt(),1); // should just be "test.txt" visible - int count = flm->rowCount(); - QCOMPARE(removeStart, 0); - QCOMPARE(removeEnd, count-1); - - flm->setProperty("folder", testFileUrl("resetfiltering/innerdir")); - QTRY_COMPARE(flm->property("count").toInt(),1); // should just be "test2.txt" visible - count = flm->rowCount(); - QCOMPARE(removeStart, 0); - QCOMPARE(removeEnd, count-1); - - flm->setProperty("folder", testFileUrl("resetfiltering")); - QTRY_COMPARE(flm->property("count").toInt(),1); // should just be "test.txt" visible - count = flm->rowCount(); - QCOMPARE(removeStart, 0); - QCOMPARE(removeEnd, count-1); -} - -void tst_qdeclarativefolderlistmodel::refresh() -{ - QDeclarativeComponent component(&engine, testFileUrl("basic.qml")); - checkNoErrors(component); - - QAbstractListModel *flm = qobject_cast<QAbstractListModel*>(component.create()); - QVERIFY(flm != 0); - - flm->setProperty("folder", dataDirectoryUrl()); - QTRY_COMPARE(flm->property("count").toInt(),4); // wait for refresh - - int count = flm->rowCount(); - - connect(flm, SIGNAL(rowsRemoved(const QModelIndex&,int,int)), - this, SLOT(removed(const QModelIndex&,int,int))); - - flm->setProperty("sortReversed", true); - - QTRY_COMPARE(removeStart, 0); - QTRY_COMPARE(removeEnd, count-1); // wait for refresh -} - -QTEST_MAIN(tst_qdeclarativefolderlistmodel) - -#include "tst_qdeclarativefolderlistmodel.moc" |