summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/kernel/qclipboard
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@digia.com>2012-09-19 10:12:15 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-09-27 09:14:51 +0200
commitb0b7d9cf6b213cebcdc5be7583119af15feb5bf6 (patch)
tree476d2920ebe6df5b8cdd988ec272887c8863e6a2 /tests/auto/gui/kernel/qclipboard
parent13fe38ebb992a045dae8cb817d180f690429fb23 (diff)
Revise QClipboard auto tests
Use PlatformClipboard::isAvailable() and fix build when QT_NO_CLIPBOARD is defined. Change-Id: I18c3af42fe39cf7618c2530723149848a10db985 Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Diffstat (limited to 'tests/auto/gui/kernel/qclipboard')
-rw-r--r--tests/auto/gui/kernel/qclipboard/copier/main.cpp2
-rw-r--r--tests/auto/gui/kernel/qclipboard/paster/main.cpp6
-rw-r--r--tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp49
3 files changed, 33 insertions, 24 deletions
diff --git a/tests/auto/gui/kernel/qclipboard/copier/main.cpp b/tests/auto/gui/kernel/qclipboard/copier/main.cpp
index e0501b8b6f..0d9c29b028 100644
--- a/tests/auto/gui/kernel/qclipboard/copier/main.cpp
+++ b/tests/auto/gui/kernel/qclipboard/copier/main.cpp
@@ -51,6 +51,8 @@ int main(int argc, char **argv)
if (arguments.size() > 1)
paste = arguments.at(1);
#endif
+#ifndef QT_NO_CLIPBOARD
QGuiApplication::clipboard()->setText(paste);
+#endif
return 0;
}
diff --git a/tests/auto/gui/kernel/qclipboard/paster/main.cpp b/tests/auto/gui/kernel/qclipboard/paster/main.cpp
index 5c6a3d5511..9b2c34c805 100644
--- a/tests/auto/gui/kernel/qclipboard/paster/main.cpp
+++ b/tests/auto/gui/kernel/qclipboard/paster/main.cpp
@@ -51,5 +51,9 @@ int main(int argc, char **argv)
if (arguments.size() > 1)
expected = arguments.at(1);
#endif
- return QGuiApplication::clipboard()->text() == expected ? 0 : 1;
+ QString actual;
+#ifndef QT_NO_CLIPBOARD
+ actual = QGuiApplication::clipboard()->text();
+#endif
+ return actual == expected ? 0 : 1;
}
diff --git a/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp b/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp
index 543856d536..5e3735ce3d 100644
--- a/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp
+++ b/tests/auto/gui/kernel/qclipboard/tst_qclipboard.cpp
@@ -46,14 +46,16 @@
#include <QtCore/QDir>
#include <QtGui/QGuiApplication>
#include <QtGui/QClipboard>
-#ifdef Q_OS_MAC
-#include <Carbon/Carbon.h>
-#endif
+#include "../../../shared/platformclipboard.h"
class tst_QClipboard : public QObject
{
Q_OBJECT
private slots:
+#ifdef QT_NO_CLIPBOARD
+ void initTestCase();
+ void cleanupTestCase();
+#else
void init();
void copy_exit_paste();
void capabilityFunctions();
@@ -61,27 +63,26 @@ private slots:
void testSignals();
void setMimeData();
void clearBeforeSetText();
-
-private:
- bool nativeClipboardWorking();
+#endif
};
-void tst_QClipboard::init()
+#ifdef QT_NO_CLIPBOARD
+void tst_QClipboard::initTestCase()
{
- const QString testdataDir = QFileInfo(QFINDTESTDATA("copier")).absolutePath();
- QVERIFY2(QDir::setCurrent(testdataDir), qPrintable("Could not chdir to " + testdataDir));
+ QSKIP("This test requires clipboard support");
}
-bool tst_QClipboard::nativeClipboardWorking()
+void tst_QClipboard::cleanupTestCase()
{
-#ifdef Q_OS_MAC
- PasteboardRef pasteboard;
- OSStatus status = PasteboardCreate(0, &pasteboard);
- if (status == noErr)
- CFRelease(pasteboard);
- return status == noErr;
-#endif
- return true;
+ QSKIP("This test requires clipboard support");
+}
+
+#else
+
+void tst_QClipboard::init()
+{
+ const QString testdataDir = QFileInfo(QFINDTESTDATA("copier")).absolutePath();
+ QVERIFY2(QDir::setCurrent(testdataDir), qPrintable("Could not chdir to " + testdataDir));
}
Q_DECLARE_METATYPE(QClipboard::Mode)
@@ -109,7 +110,7 @@ void tst_QClipboard::modes()
{
QClipboard * const clipboard = QGuiApplication::clipboard();
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Native clipboard not working in this setup");
const QString defaultMode = "default mode text;";
@@ -139,7 +140,7 @@ void tst_QClipboard::testSignals()
{
qRegisterMetaType<QClipboard::Mode>("QClipboard::Mode");
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Native clipboard not working in this setup");
QClipboard * const clipboard = QGuiApplication::clipboard();
@@ -236,7 +237,7 @@ void tst_QClipboard::copy_exit_paste()
QSKIP("This test does not make sense on X11 and embedded, copied data disappears from the clipboard when the application exits ");
// ### It's still possible to test copy/paste - just keep the apps running
#endif
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Native clipboard not working in this setup");
const QStringList stringArgument(QStringLiteral("Test string."));
QByteArray errorMessage;
@@ -253,7 +254,7 @@ void tst_QClipboard::copy_exit_paste()
void tst_QClipboard::setMimeData()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Native clipboard not working in this setup");
QMimeData *mimeData = new QMimeData;
const QString TestName(QLatin1String("tst_QClipboard::setMimeData() mimeData"));
@@ -339,7 +340,7 @@ void tst_QClipboard::clearBeforeSetText()
{
QGuiApplication::processEvents();
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Native clipboard not working in this setup");
const QString text = "tst_QClipboard::clearBeforeSetText()";
@@ -371,6 +372,8 @@ void tst_QClipboard::clearBeforeSetText()
QCOMPARE(QGuiApplication::clipboard()->text(), text);
}
+#endif
+
QTEST_MAIN(tst_QClipboard)
#include "tst_qclipboard.moc"