File indexing completed on 2024-04-21 05:46:12

0001 /*
0002     SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com>
0003     SPDX-FileCopyrightText: 2016 Harald Sitter <sitter@kde.org>
0004 
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 #include <QTest>
0009 
0010 //#include <qtest_kde.h>
0011 
0012 #include "kioLogFileReader.h"
0013 #include "logFile.h"
0014 
0015 #include "testUtil.h"
0016 
0017 #include "ksystemlog_debug.h"
0018 
0019 class KioLogFileReaderTest : public QObject
0020 {
0021     Q_OBJECT
0022 
0023 private Q_SLOTS:
0024 
0025     void initTestCase();
0026 
0027     void testKioLogFileReader();
0028 
0029 private:
0030     TestUtil testUtil;
0031 };
0032 
0033 void KioLogFileReaderTest::initTestCase()
0034 {
0035     qCDebug(KSYSTEMLOG) << "Hello";
0036 }
0037 
0038 void KioLogFileReaderTest::testKioLogFileReader()
0039 {
0040     QString const fixturePath = QFINDTESTDATA("testFiles/logFileReader/file.txt");
0041     LogFile const logFile(QUrl::fromLocalFile(fixturePath), Globals::instance().informationLogLevel());
0042 
0043     auto logFileReader = new KioLogFileReader(logFile);
0044     logFileReader->open();
0045 
0046     connect(logFileReader, &KioLogFileReader::lineRead, this, [=](const QString &line) {
0047         qCDebug(KSYSTEMLOG) << "Line " << line;
0048         static QFile file(fixturePath);
0049         static bool open = false;
0050         if (!open) {
0051             QVERIFY(file.open(QIODevice::ReadOnly | QIODevice::Text));
0052             open = true;
0053         }
0054         static QTextStream stream(&file);
0055         QCOMPARE(line, stream.readLine());
0056     });
0057     delete logFileReader;
0058 }
0059 
0060 QTEST_MAIN(KioLogFileReaderTest)
0061 
0062 #include "kioLogFileReaderTest.moc"