summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShane Kearns <shane.kearns@accenture.com>2012-01-11 16:51:08 +0000
committerShane Kearns <shane.kearns@accenture.com>2012-04-20 12:17:40 +0200
commitd87ae4451af61f3b919ac051133428b1f4fb9173 (patch)
tree0a8a4efdfd8d8062de9b17b59c76d2fd1744195c
parent25350b892fa3b24010f8fb564cd9e13037613c98 (diff)
copy network-settings.h from Qt
Change-Id: I2c13e07814389fd764b88f9cc7e12d5262c767e5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
-rw-r--r--tests/auto/network-settings.h160
1 files changed, 160 insertions, 0 deletions
diff --git a/tests/auto/network-settings.h b/tests/auto/network-settings.h
new file mode 100644
index 0000000..bd3539c
--- /dev/null
+++ b/tests/auto/network-settings.h
@@ -0,0 +1,160 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 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$
+** 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 <QString>
+#ifdef QT_NETWORK_LIB
+#include <QtNetwork/QHostInfo>
+#endif
+
+class QtNetworkSettings
+{
+public:
+
+ static QString serverLocalName()
+ {
+ return QString("qt-test-server");
+ }
+ static QString serverDomainName()
+ {
+ return QString("qt-test-net");
+ }
+ static QString serverName()
+ {
+ return serverLocalName() + "." + serverDomainName();
+ }
+ static QString winServerName()
+ {
+ return serverName();
+ }
+ static QString wildcardServerName()
+ {
+ return "qt-test-server.wildcard.dev." + serverDomainName();
+ }
+
+#ifdef QT_NETWORK_LIB
+ static QHostAddress serverIP()
+ {
+ return QHostInfo::fromName(serverName()).addresses().first();
+ }
+#endif
+
+ static bool compareReplyIMAP(QByteArray const& actual)
+ {
+ QList<QByteArray> expected;
+
+ // Mandriva; old test server
+ expected << QByteArray( "* OK [CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ID STARTTLS LOGINDISABLED] " )
+ .append(QtNetworkSettings::serverName().toAscii())
+ .append(" Cyrus IMAP4 v2.3.11-Mandriva-RPM-2.3.11-6mdv2008.1 server ready\r\n");
+
+ // Ubuntu 10.04; new test server
+ expected << QByteArray( "* OK " )
+ .append(QtNetworkSettings::serverLocalName().toAscii())
+ .append(" Cyrus IMAP4 v2.2.13-Debian-2.2.13-19 server ready\r\n");
+
+ // Feel free to add more as needed
+
+ Q_FOREACH (QByteArray const& ba, expected) {
+ if (ba == actual) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ static bool compareReplyIMAPSSL(QByteArray const& actual)
+ {
+ QList<QByteArray> expected;
+
+ // Mandriva; old test server
+ expected << QByteArray( "* OK [CAPABILITY IMAP4 IMAP4rev1 LITERAL+ ID AUTH=PLAIN SASL-IR] " )
+ .append(QtNetworkSettings::serverName().toAscii())
+ .append(" Cyrus IMAP4 v2.3.11-Mandriva-RPM-2.3.11-6mdv2008.1 server ready\r\n");
+
+ // Ubuntu 10.04; new test server
+ expected << QByteArray( "* OK " )
+ .append(QtNetworkSettings::serverLocalName().toAscii())
+ .append(" Cyrus IMAP4 v2.2.13-Debian-2.2.13-19 server ready\r\n");
+
+ // Feel free to add more as needed
+
+ Q_FOREACH (QByteArray const& ba, expected) {
+ if (ba == actual) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ static bool compareReplyFtp(QByteArray const& actual)
+ {
+ QList<QByteArray> expected;
+
+ // A few different vsFTPd versions.
+ // Feel free to add more as needed
+ expected << QByteArray( "220 (vsFTPd 2.0.5)\r\n221 Goodbye.\r\n" );
+ expected << QByteArray( "220 (vsFTPd 2.2.2)\r\n221 Goodbye.\r\n" );
+
+ Q_FOREACH (QByteArray const& ba, expected) {
+ if (ba == actual) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+#ifdef QT_NETWORK_LIB
+ static bool verifyTestNetworkSettings()
+ {
+ QHostInfo testServerResult = QHostInfo::fromName(QtNetworkSettings::serverName());
+ if (testServerResult.error() != QHostInfo::NoError) {
+ qWarning() << "Could not lookup" << QtNetworkSettings::serverName();
+ qWarning() << "Please configure the test environment!";
+ qWarning() << "See /etc/hosts or network-settings.h";
+ return false;
+ }
+ return true;
+ }
+#endif
+};