File indexing completed on 2025-02-02 05:08:36

0001 /*
0002     SPDX-FileCopyrightText: 2010 Tom Albers <toma@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "servertest.h"
0008 #include <MailTransport/ServerTest>
0009 #include <MailTransport/Transport>
0010 
0011 #include "accountwizard_debug.h"
0012 
0013 ServerTest::ServerTest(QObject *parent)
0014     : QObject(parent)
0015     , m_serverTest(new MailTransport::ServerTest(nullptr))
0016 {
0017     qCDebug(ACCOUNTWIZARD_LOG) << "Welcome!";
0018     connect(m_serverTest, &MailTransport::ServerTest::finished, this, &ServerTest::testFinished);
0019 }
0020 
0021 ServerTest::~ServerTest()
0022 {
0023     delete m_serverTest;
0024 }
0025 
0026 void ServerTest::test(const QString &server, const QString &protocol)
0027 {
0028     qCDebug(ACCOUNTWIZARD_LOG) << server << protocol;
0029     m_serverTest->setServer(server);
0030     m_serverTest->setProtocol(protocol);
0031     if (protocol == QLatin1StringView("submission")) {
0032         m_serverTest->setProtocol(QStringLiteral("smtp"));
0033         m_serverTest->setPort(MailTransport::Transport::EnumEncryption::None, 587);
0034         m_serverTest->setPort(MailTransport::Transport::EnumEncryption::SSL, 0); // No ssl port for submission
0035     }
0036     m_serverTest->start();
0037 }
0038 
0039 void ServerTest::testFinished(const QVector<int> &list)
0040 {
0041     qCDebug(ACCOUNTWIZARD_LOG) << "types: " << list;
0042     if (list.contains(MailTransport::Transport::EnumEncryption::TLS)) {
0043         Q_EMIT testResult(QStringLiteral("tls"));
0044     } else if (list.contains(MailTransport::Transport::EnumEncryption::SSL)) {
0045         Q_EMIT testResult(QStringLiteral("ssl"));
0046     } else {
0047         Q_EMIT testFail();
0048     }
0049 }
0050 
0051 #include "moc_servertest.cpp"