mirror of
https://github.com/redstrate/Astra.git
synced 2025-04-21 04:07:46 +00:00
Add ProcessWatcher test
This commit is contained in:
parent
2ee0606a56
commit
99555830d6
3 changed files with 44 additions and 5 deletions
|
@ -7,6 +7,12 @@ ecm_add_test(patchlisttest.cpp
|
||||||
NAME_PREFIX "astra-"
|
NAME_PREFIX "astra-"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
ecm_add_test(processwatchertest.cpp
|
||||||
|
TEST_NAME processwatchertest
|
||||||
|
LINK_LIBRARIES astra_static Qt::Test
|
||||||
|
NAME_PREFIX "astra-"
|
||||||
|
)
|
||||||
|
|
||||||
ecm_add_test(utilitytest.cpp
|
ecm_add_test(utilitytest.cpp
|
||||||
TEST_NAME utilitytest
|
TEST_NAME utilitytest
|
||||||
LINK_LIBRARIES astra_static Qt::Test
|
LINK_LIBRARIES astra_static Qt::Test
|
||||||
|
|
33
autotests/processwatchertest.cpp
Normal file
33
autotests/processwatchertest.cpp
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
// SPDX-FileCopyrightText: 2024 Joshua Goins <josh@redstrate.com>
|
||||||
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
#include <QtTest/QtTest>
|
||||||
|
|
||||||
|
#include "processwatcher.h"
|
||||||
|
|
||||||
|
class ProcessWatcherTest : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
private Q_SLOTS:
|
||||||
|
void testWatcher()
|
||||||
|
{
|
||||||
|
QProcess process;
|
||||||
|
process.setProgram(QStringLiteral("echo"));
|
||||||
|
process.start();
|
||||||
|
|
||||||
|
const auto watcher = new ProcessWatcher(process.processId());
|
||||||
|
|
||||||
|
const QSignalSpy spy(watcher, &ProcessWatcher::finished);
|
||||||
|
|
||||||
|
QVERIFY(spy.isValid());
|
||||||
|
QCOMPARE(spy.count(), 0);
|
||||||
|
|
||||||
|
process.kill();
|
||||||
|
|
||||||
|
QTRY_COMPARE(spy.count(), 1);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
QTEST_MAIN(ProcessWatcherTest)
|
||||||
|
#include "processwatchertest.moc"
|
|
@ -29,13 +29,16 @@ ecm_qt_declare_logging_category(astra_static
|
||||||
|
|
||||||
target_sources(astra_static PRIVATE
|
target_sources(astra_static PRIVATE
|
||||||
include/patchlist.h
|
include/patchlist.h
|
||||||
|
include/processwatcher.h
|
||||||
include/utility.h
|
include/utility.h
|
||||||
src/patchlist.cpp
|
src/patchlist.cpp
|
||||||
|
src/processwatcher.cpp
|
||||||
src/utility.cpp)
|
src/utility.cpp)
|
||||||
target_include_directories(astra_static PUBLIC include)
|
target_include_directories(astra_static PUBLIC include)
|
||||||
target_link_libraries(astra_static PUBLIC
|
target_link_libraries(astra_static PUBLIC
|
||||||
Qt6::Core
|
Qt6::Core
|
||||||
Qt6::Network)
|
Qt6::Network
|
||||||
|
KF6::CoreAddons)
|
||||||
|
|
||||||
add_executable(astra)
|
add_executable(astra)
|
||||||
|
|
||||||
|
@ -59,7 +62,6 @@ target_sources(astra PRIVATE
|
||||||
include/logger.h
|
include/logger.h
|
||||||
include/patcher.h
|
include/patcher.h
|
||||||
include/processlogger.h
|
include/processlogger.h
|
||||||
include/processwatcher.h
|
|
||||||
include/profile.h
|
include/profile.h
|
||||||
include/profilemanager.h
|
include/profilemanager.h
|
||||||
include/sapphirelogin.h
|
include/sapphirelogin.h
|
||||||
|
@ -82,7 +84,6 @@ target_sources(astra PRIVATE
|
||||||
src/main.cpp
|
src/main.cpp
|
||||||
src/patcher.cpp
|
src/patcher.cpp
|
||||||
src/processlogger.cpp
|
src/processlogger.cpp
|
||||||
src/processwatcher.cpp
|
|
||||||
src/profile.cpp
|
src/profile.cpp
|
||||||
src/profilemanager.cpp
|
src/profilemanager.cpp
|
||||||
src/sapphirelogin.cpp
|
src/sapphirelogin.cpp
|
||||||
|
@ -157,7 +158,6 @@ target_link_libraries(astra PRIVATE
|
||||||
KF6::I18n
|
KF6::I18n
|
||||||
KF6::ConfigCore
|
KF6::ConfigCore
|
||||||
KF6::ConfigGui
|
KF6::ConfigGui
|
||||||
KF6::CoreAddons
|
|
||||||
KF6::Archive
|
KF6::Archive
|
||||||
QCoro::Core
|
QCoro::Core
|
||||||
QCoro::Network
|
QCoro::Network
|
||||||
|
|
Loading…
Add table
Reference in a new issue