File indexing completed on 2025-03-09 04:54:39

0001 /*
0002    SPDX-FileCopyrightText: 2016-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "testmailmboxwebengine.h"
0008 
0009 #include <KActionCollection>
0010 #include <KMime/Content>
0011 #include <QApplication>
0012 #include <QDebug>
0013 #include <QFile>
0014 #include <QVBoxLayout>
0015 
0016 #include <MessageViewer/MailWebEngineView>
0017 #include <MessageViewer/Viewer>
0018 
0019 TestMailMBoxWebEngine::TestMailMBoxWebEngine(QWidget *parent)
0020     : QWidget(parent)
0021 {
0022     auto vbox = new QVBoxLayout(this);
0023     auto viewer = new MessageViewer::Viewer(nullptr, nullptr, new KActionCollection(this));
0024     vbox->addWidget(viewer);
0025     viewer->setMessage(readAndParseMail(QStringLiteral("html.mbox")));
0026     viewer->setPluginName(QStringLiteral("longheaderstyleplugin"));
0027 }
0028 
0029 TestMailMBoxWebEngine::~TestMailMBoxWebEngine() = default;
0030 
0031 KMime::Message::Ptr TestMailMBoxWebEngine::readAndParseMail(const QString &mailFile)
0032 {
0033     QFile file(QLatin1StringView(MAIL_DATA_DIR) + QLatin1Char('/') + mailFile);
0034     file.open(QIODevice::ReadOnly);
0035     QByteArray ba = file.readAll();
0036     qDebug() << ba;
0037     const QByteArray data = ba;
0038     Q_ASSERT(!data.isEmpty());
0039     KMime::Message::Ptr msg(new KMime::Message);
0040     msg->setContent(data);
0041     msg->parse();
0042     return msg;
0043 }
0044 
0045 int main(int argc, char *argv[])
0046 {
0047     QApplication app(argc, argv);
0048     auto testWebEngine = new TestMailMBoxWebEngine;
0049     testWebEngine->show();
0050     const int ret = app.exec();
0051     return ret;
0052 }
0053 
0054 #include "moc_testmailmboxwebengine.cpp"