diff options
author | Jason McDonald <jason.mcdonald@nokia.com> | 2011-12-02 14:39:42 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-12-05 02:32:37 +0100 |
commit | 3171081d43d6f83036807e3ad663d6918eb8e55c (patch) | |
tree | bf4639ff624262abf34afed699cdd016c3abbb37 /tests/auto/unit/qmediaobject | |
parent | 4c834365c69dfcb6340a59321f483c8d20296806 (diff) |
Cleanup multimedia unit tests.
Use QTEST_MAIN or QTEST_GUILESS_MAIN instead of equivalent custom main()
functions. Also collapse each test into a single source file, in line
with most other autotests.
Change-Id: I38c7b6a9eb0ff1c9b8ac44de7d5f40d6ac6c46ea
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Diffstat (limited to 'tests/auto/unit/qmediaobject')
-rw-r--r-- | tests/auto/unit/qmediaobject/main.cpp | 53 | ||||
-rw-r--r-- | tests/auto/unit/qmediaobject/qmediaobject.pro | 8 | ||||
-rw-r--r-- | tests/auto/unit/qmediaobject/tst_qmediaobject.cpp | 107 | ||||
-rw-r--r-- | tests/auto/unit/qmediaobject/tst_qmediaobject.h | 147 |
4 files changed, 106 insertions, 209 deletions
diff --git a/tests/auto/unit/qmediaobject/main.cpp b/tests/auto/unit/qmediaobject/main.cpp deleted file mode 100644 index 5e822768d..000000000 --- a/tests/auto/unit/qmediaobject/main.cpp +++ /dev/null @@ -1,53 +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 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 <QtCore/qcoreapplication.h> -#include <QtTest/QtTest> - -#include "tst_qmediaobject.h" - -int main(int argc, char**argv) -{ - QCoreApplication app(argc,argv); - int ret; - tst_QMediaObject test_api; - ret = QTest::qExec(&test_api, argc, argv); - return ret; -} diff --git a/tests/auto/unit/qmediaobject/qmediaobject.pro b/tests/auto/unit/qmediaobject/qmediaobject.pro index 01ee43e04..e84e5c745 100644 --- a/tests/auto/unit/qmediaobject/qmediaobject.pro +++ b/tests/auto/unit/qmediaobject/qmediaobject.pro @@ -1,11 +1,7 @@ -CONFIG += testcase +CONFIG += testcase no_private_qt_headers_warning TARGET = tst_qmediaobject - QT += multimedia-private testlib -CONFIG += no_private_qt_headers_warning include (../qmultimedia_common/mockrecorder.pri) -HEADERS+= tst_qmediaobject.h -SOURCES += main.cpp tst_qmediaobject.cpp - +SOURCES += tst_qmediaobject.cpp diff --git a/tests/auto/unit/qmediaobject/tst_qmediaobject.cpp b/tests/auto/unit/qmediaobject/tst_qmediaobject.cpp index dde293634..ad8764b17 100644 --- a/tests/auto/unit/qmediaobject/tst_qmediaobject.cpp +++ b/tests/auto/unit/qmediaobject/tst_qmediaobject.cpp @@ -4,7 +4,7 @@ ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** -** This file is part of the Qt Toolkit. +** This file is part of the test suite of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** GNU Lesser General Public License Usage @@ -41,13 +41,111 @@ //TESTED_COMPONENT=src/multimedia -#include "tst_qmediaobject.h" +#include <QtTest/QtTest> + +#include <QtCore/qtimer.h> + +#include <qmediaobject.h> +#include <qmediaservice.h> +#include <qmetadatareadercontrol.h> +#include <qaudiocapturesource.h> +#include <qaudioendpointselector.h> #include "mockmediarecorderservice.h" #include "mockmediaserviceprovider.h" +#include "mockmetadatareadercontrol.h" + +class QtTestMetaDataService : public QMediaService +{ + Q_OBJECT +public: + QtTestMetaDataService(QObject *parent = 0):QMediaService(parent), metaDataRef(0), hasMetaData(true) + { + } + + QMediaControl *requestControl(const char *iid) + { + if (hasMetaData && qstrcmp(iid, QMetaDataReaderControl_iid) == 0) + return &metaData; + else + return 0; + } + + void releaseControl(QMediaControl *) + { + } + + MockMetaDataReaderControl metaData; + int metaDataRef; + bool hasMetaData; +}; QT_USE_NAMESPACE +class tst_QMediaObject : public QObject +{ + Q_OBJECT + +private slots: + void propertyWatch(); + void notifySignals_data(); + void notifySignals(); + void notifyInterval_data(); + void notifyInterval(); + + void nullMetaDataControl(); + void isMetaDataAvailable(); + void metaDataChanged(); + void metaData_data(); + void metaData(); + void availability(); + void extendedMetaData_data() { metaData_data(); } + void extendedMetaData(); + + void service(); + void availabilityChangedSignal(); + +private: + void setupNotifyTests(); +}; + +class QtTestMediaObject : public QMediaObject +{ + Q_OBJECT + Q_PROPERTY(int a READ a WRITE setA NOTIFY aChanged) + Q_PROPERTY(int b READ b WRITE setB NOTIFY bChanged) + Q_PROPERTY(int c READ c WRITE setC NOTIFY cChanged) + Q_PROPERTY(int d READ d WRITE setD) +public: + QtTestMediaObject(QMediaService *service = 0): QMediaObject(0, service), m_a(0), m_b(0), m_c(0), m_d(0) {} + + using QMediaObject::addPropertyWatch; + using QMediaObject::removePropertyWatch; + + int a() const { return m_a; } + void setA(int a) { m_a = a; } + + int b() const { return m_b; } + void setB(int b) { m_b = b; } + + int c() const { return m_c; } + void setC(int c) { m_c = c; } + + int d() const { return m_d; } + void setD(int d) { m_d = d; } + +Q_SIGNALS: + void aChanged(int a); + void bChanged(int b); + void cChanged(int c); + +private: + int m_a; + int m_b; + int m_c; + int m_d; +}; + void tst_QMediaObject::propertyWatch() { QtTestMediaObject object; @@ -400,4 +498,7 @@ void tst_QMediaObject::availability() QVERIFY(spy.count() == 1); available = qvariant_cast<bool>(spy.at(0).at(0)); QVERIFY(available == false); - } +} + +QTEST_GUILESS_MAIN(tst_QMediaObject) +#include "tst_qmediaobject.moc" diff --git a/tests/auto/unit/qmediaobject/tst_qmediaobject.h b/tests/auto/unit/qmediaobject/tst_qmediaobject.h deleted file mode 100644 index 5bc70c4a4..000000000 --- a/tests/auto/unit/qmediaobject/tst_qmediaobject.h +++ /dev/null @@ -1,147 +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 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$ -** -****************************************************************************/ -#ifndef TST_QMEDIAOBJECT_H -#define TST_QMEDIAOBJECT_H - -#include <QtTest/QtTest> - -#include <QtCore/qtimer.h> - -#include <qmediaobject.h> -#include <qmediaservice.h> -#include <qmetadatareadercontrol.h> -#include <qaudiocapturesource.h> -#include <qaudioendpointselector.h> - -//TESTED_COMPONENT=src/multimedia - -#include "mockmetadatareadercontrol.h" - -class QtTestMetaDataService : public QMediaService -{ - Q_OBJECT -public: - QtTestMetaDataService(QObject *parent = 0):QMediaService(parent), metaDataRef(0), hasMetaData(true) - { - } - - QMediaControl *requestControl(const char *iid) - { - if (hasMetaData && qstrcmp(iid, QMetaDataReaderControl_iid) == 0) - return &metaData; - else - return 0; - } - - void releaseControl(QMediaControl *) - { - } - - MockMetaDataReaderControl metaData; - int metaDataRef; - bool hasMetaData; -}; - -QT_USE_NAMESPACE -class tst_QMediaObject : public QObject -{ - Q_OBJECT - -private slots: - void propertyWatch(); - void notifySignals_data(); - void notifySignals(); - void notifyInterval_data(); - void notifyInterval(); - - void nullMetaDataControl(); - void isMetaDataAvailable(); - void metaDataChanged(); - void metaData_data(); - void metaData(); - void availability(); - void extendedMetaData_data() { metaData_data(); } - void extendedMetaData(); - - void service(); - void availabilityChangedSignal(); - -private: - void setupNotifyTests(); -}; - -class QtTestMediaObject : public QMediaObject -{ - Q_OBJECT - Q_PROPERTY(int a READ a WRITE setA NOTIFY aChanged) - Q_PROPERTY(int b READ b WRITE setB NOTIFY bChanged) - Q_PROPERTY(int c READ c WRITE setC NOTIFY cChanged) - Q_PROPERTY(int d READ d WRITE setD) -public: - QtTestMediaObject(QMediaService *service = 0): QMediaObject(0, service), m_a(0), m_b(0), m_c(0), m_d(0) {} - - using QMediaObject::addPropertyWatch; - using QMediaObject::removePropertyWatch; - - int a() const { return m_a; } - void setA(int a) { m_a = a; } - - int b() const { return m_b; } - void setB(int b) { m_b = b; } - - int c() const { return m_c; } - void setC(int c) { m_c = c; } - - int d() const { return m_d; } - void setD(int d) { m_d = d; } - -Q_SIGNALS: - void aChanged(int a); - void bChanged(int b); - void cChanged(int c); - -private: - int m_a; - int m_b; - int m_c; - int m_d; -}; -#endif //TST_QMEDIAOBJECT_H |