From 6c2457d60bcd3ba4ab16df72bcd21ed025ff09d9 Mon Sep 17 00:00:00 2001 From: sithlord48 Date: Sat, 5 Apr 2025 18:01:35 -0400 Subject: [PATCH] refactor: port ClientArgsTests to QtTests --- .../deskflow/ClientArgsParsingTests.cpp | 126 ------------------ src/unittests/deskflow/ArgParserTests.cpp | 70 ++++++++++ src/unittests/deskflow/ArgParserTests.h | 6 + 3 files changed, 76 insertions(+), 126 deletions(-) delete mode 100644 src/test/unittests/deskflow/ClientArgsParsingTests.cpp diff --git a/src/test/unittests/deskflow/ClientArgsParsingTests.cpp b/src/test/unittests/deskflow/ClientArgsParsingTests.cpp deleted file mode 100644 index f9813639d..000000000 --- a/src/test/unittests/deskflow/ClientArgsParsingTests.cpp +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Deskflow -- mouse and keyboard sharing utility - * SPDX-FileCopyrightText: (C) 2014 - 2016 Symless Ltd. - * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception - */ - -#include "deskflow/ArgParser.h" -#include "deskflow/ClientArgs.h" -#include "test/mock/deskflow/MockArgParser.h" - -#include - -#include - -using ::testing::_; -using ::testing::Invoke; -using ::testing::NiceMock; - -bool client_stubParseGenericArgs(int, const char *const *, int &) -{ - return false; -} - -bool client_stubCheckUnexpectedArgs() -{ - return false; -} - -TEST(ClientArgsParsingTests, parseClientArgs_yScrollArg_setYScroll) -{ - NiceMock argParser; - ON_CALL(argParser, parseGenericArgs(_, _, _)).WillByDefault(Invoke(client_stubParseGenericArgs)); - ON_CALL(argParser, checkUnexpectedArgs()).WillByDefault(Invoke(client_stubCheckUnexpectedArgs)); - deskflow::ClientArgs clientArgs; - const int argc = 3; - const char *kYScrollCmd[argc] = {"stub", "--yscroll", "1"}; - - argParser.parseClientArgs(clientArgs, argc, kYScrollCmd); - - EXPECT_EQ(1, clientArgs.m_yscroll); -} - -TEST(ClientArgsParsingTests, parseClientArgs_setLangSync) -{ - NiceMock argParser; - ON_CALL(argParser, parseGenericArgs(_, _, _)).WillByDefault(Invoke(client_stubParseGenericArgs)); - ON_CALL(argParser, checkUnexpectedArgs()).WillByDefault(Invoke(client_stubCheckUnexpectedArgs)); - deskflow::ClientArgs clientArgs; - clientArgs.m_enableLangSync = false; - const int argc = 2; - std::array kLangCmd = {"stub", "--sync-language"}; - - argParser.parseClientArgs(clientArgs, argc, kLangCmd.data()); - - EXPECT_TRUE(clientArgs.m_enableLangSync); -} - -TEST(ClientArgsParsingTests, parseClientArgs_setInvertScroll) -{ - NiceMock argParser; - deskflow::ClientArgs clientArgs; - const int argc = 2; - std::array kLangCmd = {"stub", "--invert-scroll"}; - - argParser.parseClientArgs(clientArgs, argc, kLangCmd.data()); - EXPECT_EQ(clientArgs.m_clientScrollDirection, deskflow::ClientScrollDirection::INVERT_SERVER); -} - -TEST(ClientArgsParsingTests, parseClientArgs_setCommonArgs) -{ - NiceMock argParser; - ON_CALL(argParser, parseGenericArgs(_, _, _)).WillByDefault(Invoke(client_stubParseGenericArgs)); - ON_CALL(argParser, checkUnexpectedArgs()).WillByDefault(Invoke(client_stubCheckUnexpectedArgs)); - deskflow::ClientArgs clientArgs; - clientArgs.m_enableLangSync = false; - const int argc = 5; - std::array kLangCmd = {"stub", "--enable-crypto", "--tls-cert", "tlsCertPath", "--prevent-sleep"}; - argParser.parseClientArgs(clientArgs, argc, kLangCmd.data()); - - EXPECT_TRUE(clientArgs.m_enableCrypto); - EXPECT_EQ(clientArgs.m_tlsCertFile, "tlsCertPath"); - EXPECT_TRUE(clientArgs.m_preventSleep); -} - -TEST(ClientArgsParsingTests, parseClientArgs_addressArg_setDeskflowAddress) -{ - NiceMock argParser; - ON_CALL(argParser, parseGenericArgs(_, _, _)).WillByDefault(Invoke(client_stubParseGenericArgs)); - ON_CALL(argParser, checkUnexpectedArgs()).WillByDefault(Invoke(client_stubCheckUnexpectedArgs)); - deskflow::ClientArgs clientArgs; - const int argc = 2; - const char *kAddressCmd[argc] = {"stub", "mock_address"}; - - bool result = argParser.parseClientArgs(clientArgs, argc, kAddressCmd); - - EXPECT_EQ("mock_address", clientArgs.m_serverAddress); - EXPECT_EQ(true, result); -} - -TEST(ClientArgsParsingTests, parseClientArgs_noAddressArg_returnFalse) -{ - NiceMock argParser; - ON_CALL(argParser, parseGenericArgs(_, _, _)).WillByDefault(Invoke(client_stubParseGenericArgs)); - ON_CALL(argParser, checkUnexpectedArgs()).WillByDefault(Invoke(client_stubCheckUnexpectedArgs)); - deskflow::ClientArgs clientArgs; - const int argc = 1; - const char *kNoAddressCmd[argc] = {"stub"}; - - bool result = argParser.parseClientArgs(clientArgs, argc, kNoAddressCmd); - - EXPECT_FALSE(result); -} - -TEST(ClientArgsParsingTests, parseClientArgs_unrecognizedArg_returnFalse) -{ - NiceMock argParser; - ON_CALL(argParser, parseGenericArgs(_, _, _)).WillByDefault(Invoke(client_stubParseGenericArgs)); - ON_CALL(argParser, checkUnexpectedArgs()).WillByDefault(Invoke(client_stubCheckUnexpectedArgs)); - deskflow::ClientArgs clientArgs; - const int argc = 3; - const char *kUnrecognizedCmd[argc] = {"stub", "mock_arg", "mock_address"}; - - bool result = argParser.parseClientArgs(clientArgs, argc, kUnrecognizedCmd); - - EXPECT_FALSE(result); -} diff --git a/src/unittests/deskflow/ArgParserTests.cpp b/src/unittests/deskflow/ArgParserTests.cpp index 75146aab2..5cf60ddce 100644 --- a/src/unittests/deskflow/ArgParserTests.cpp +++ b/src/unittests/deskflow/ArgParserTests.cpp @@ -199,6 +199,76 @@ void ArgParserTests::clientArgs() QVERIFY(args.m_shouldExitOk); } +void ArgParserTests::client_yScroll() +{ + deskflow::ClientArgs clientArgs; + const int argc = 3; + const char *kYScrollCmd[argc] = {"stub", "--yscroll", "1"}; + + m_parser.parseClientArgs(clientArgs, argc, kYScrollCmd); + + QCOMPARE(clientArgs.m_yscroll, 1); +} + +void ArgParserTests::client_setLangSync() +{ + deskflow::ClientArgs clientArgs; + clientArgs.m_enableLangSync = false; + const int argc = 2; + std::array kLangCmd = {"stub", "--sync-language"}; + + m_parser.parseClientArgs(clientArgs, argc, kLangCmd.data()); + + QVERIFY(clientArgs.m_enableLangSync); +} + +void ArgParserTests::client_setInvertScroll() +{ + deskflow::ClientArgs clientArgs; + const int argc = 2; + std::array kLangCmd = {"stub", "--invert-scroll"}; + + m_parser.parseClientArgs(clientArgs, argc, kLangCmd.data()); + + QCOMPARE(clientArgs.m_clientScrollDirection, deskflow::ClientScrollDirection::INVERT_SERVER); +} + +void ArgParserTests::client_commonArgs() +{ + deskflow::ClientArgs clientArgs; + clientArgs.m_enableLangSync = false; + const int argc = 5; + std::array kLangCmd = {"stub", "--enable-crypto", "--tls-cert", "tlsCertPath", "--prevent-sleep"}; + + m_parser.parseClientArgs(clientArgs, argc, kLangCmd.data()); + + QVERIFY(clientArgs.m_enableCrypto); + QVERIFY(clientArgs.m_preventSleep); + QCOMPARE(clientArgs.m_tlsCertFile, "tlsCertPath"); +} + +void ArgParserTests::client_setAddress() +{ + deskflow::ClientArgs clientArgs; + const int argc = 2; + const char *kAddressCmd[argc] = {"stub", "mock_address"}; + + QVERIFY(m_parser.parseClientArgs(clientArgs, argc, kAddressCmd)); + QCOMPARE(clientArgs.m_serverAddress, "mock_address"); +} + +void ArgParserTests::client_badArgs() +{ + deskflow::ClientArgs clientArgs; + const int argc = 1; + const char *kNoAddressCmd[argc] = {"stub"}; + QVERIFY(!m_parser.parseClientArgs(clientArgs, argc, kNoAddressCmd)); + + const int argc2 = 3; + const char *kUnrecognizedCmd[argc2] = {"stub", "mock_arg", "mock_address"}; + QVERIFY(!m_parser.parseClientArgs(clientArgs, argc2, kUnrecognizedCmd)); +} + void ArgParserTests::deprecatedArg_crypoPass_true() { int i = 1; diff --git a/src/unittests/deskflow/ArgParserTests.h b/src/unittests/deskflow/ArgParserTests.h index 5836a9a7f..b72bfdaf8 100644 --- a/src/unittests/deskflow/ArgParserTests.h +++ b/src/unittests/deskflow/ArgParserTests.h @@ -24,6 +24,12 @@ private slots: void assembleCommand(); void serverArgs(); void clientArgs(); + void client_yScroll(); + void client_setLangSync(); + void client_setInvertScroll(); + void client_commonArgs(); + void client_setAddress(); + void client_badArgs(); void deprecatedArg_crypoPass_true(); void deprecatedArg_crypoPass_false();