From b235a1891ad8654bf52062d68f76e120883514d9 Mon Sep 17 00:00:00 2001 From: SerhiiGadzhilov <71632867+SerhiiGadzhilov@users.noreply.github.com> Date: Tue, 3 Nov 2020 17:00:12 +0300 Subject: [PATCH] SYNERGY-221 Blocker bugs in synergy-core tests (#6824) * SYNERGY-221 Blocker bugs in synergy-core tests * Update ChangeLog --- ChangeLog | 2 +- src/test/unittests/synergy/ArgParserTests.cpp | 2 +- .../synergy/GenericArgsParsingTests.cpp | 142 +++++++----------- 3 files changed, 54 insertions(+), 92 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2613a021e..87713359d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -12,7 +12,7 @@ Bug fixes: - #6660 + #6582 Add missing XAtom for utf-8 handling with Xorg - #6814 The system asks to save twice. - #6817 Configure requires dns_sd.h for enterprise version -- #6821 Blocker bugs found by sonar +- #6821 Blocker bugs found by sonar in synergy and in tests - #6825 The system requires google test even when tests are disabled with BUILD_TESTS=OFF Enhancements: diff --git a/src/test/unittests/synergy/ArgParserTests.cpp b/src/test/unittests/synergy/ArgParserTests.cpp index b984e613b..8b1211427 100644 --- a/src/test/unittests/synergy/ArgParserTests.cpp +++ b/src/test/unittests/synergy/ArgParserTests.cpp @@ -45,8 +45,8 @@ TEST(ArgParserTests, isArg_missingArgs_returnFalse) int i = 1; const int argc = 2; const char* argv[argc] = { "stub", "-t" }; + static lib::synergy::ArgsBase argsBase; ArgParser argParser(NULL); - lib::synergy::ArgsBase argsBase; argParser.setArgsBase(argsBase); bool result = ArgParser::isArg(i, argc, argv, "-t", NULL, 1); diff --git a/src/test/unittests/synergy/GenericArgsParsingTests.cpp b/src/test/unittests/synergy/GenericArgsParsingTests.cpp index 57d78e71c..a419bc394 100644 --- a/src/test/unittests/synergy/GenericArgsParsingTests.cpp +++ b/src/test/unittests/synergy/GenericArgsParsingTests.cpp @@ -41,171 +41,150 @@ showMockVersion() g_versionShowed = true; } -TEST(GenericArgsParsingTests, parseGenericArgs_logLevelCmd_setLogLevel) +class GenericArgsParsingTests : public ::testing::Test +{ +public: + void SetUp() + { + m_argParser = new ArgParser(nullptr); + m_argParser->setArgsBase(argsBase); + } + + void TearDown() + { + delete m_argParser; + } + + static lib::synergy::ArgsBase argsBase; + ArgParser* m_argParser = nullptr; +}; + +lib::synergy::ArgsBase GenericArgsParsingTests::argsBase; + +TEST_F(GenericArgsParsingTests, parseGenericArgs_logLevelCmd_setLogLevel) { int i = 1; const int argc = 3; const char* kLogLevelCmd[argc] = { "stub", "--debug", "DEBUG" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kLogLevelCmd, i); - + m_argParser->parseGenericArgs(argc, kLogLevelCmd, i); String logFilter(argsBase.m_logFilter); EXPECT_EQ("DEBUG", logFilter); EXPECT_EQ(2, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_logFileCmd_saveLogFilename) +TEST_F(GenericArgsParsingTests, parseGenericArgs_logFileCmd_saveLogFilename) { int i = 1; const int argc = 3; const char* kLogFileCmd[argc] = { "stub", "--log", "mock_filename" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kLogFileCmd, i); - + m_argParser->parseGenericArgs(argc, kLogFileCmd, i); String logFile(argsBase.m_logFile); EXPECT_EQ("mock_filename", logFile); EXPECT_EQ(2, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_logFileCmdWithSpace_saveLogFilename) +TEST_F(GenericArgsParsingTests, parseGenericArgs_logFileCmdWithSpace_saveLogFilename) { int i = 1; const int argc = 3; const char* kLogFileCmdWithSpace[argc] = { "stub", "--log", "mo ck_filename" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kLogFileCmdWithSpace, i); - + m_argParser->parseGenericArgs(argc, kLogFileCmdWithSpace, i); String logFile(argsBase.m_logFile); EXPECT_EQ("mo ck_filename", logFile); EXPECT_EQ(2, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_noDeamonCmd_daemonFalse) +TEST_F(GenericArgsParsingTests, parseGenericArgs_noDeamonCmd_daemonFalse) { int i = 1; const int argc = 2; const char* kNoDeamonCmd[argc] = { "stub", "-f" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kNoDeamonCmd, i); + m_argParser->parseGenericArgs(argc, kNoDeamonCmd, i); EXPECT_FALSE(argsBase.m_daemon); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_deamonCmd_daemonTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_deamonCmd_daemonTrue) { int i = 1; const int argc = 2; const char* kDeamonCmd[argc] = { "stub", "--daemon" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kDeamonCmd, i); + m_argParser->parseGenericArgs(argc, kDeamonCmd, i); EXPECT_EQ(true, argsBase.m_daemon); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_nameCmd_saveName) +TEST_F(GenericArgsParsingTests, parseGenericArgs_nameCmd_saveName) { int i = 1; const int argc = 3; const char* kNameCmd[argc] = { "stub", "--name", "mock" }; - ArgParser argParser(NULL); - lib::synergy::ArgsBase argsBase; - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kNameCmd, i); + m_argParser->parseGenericArgs(argc, kNameCmd, i); EXPECT_EQ("mock", argsBase.m_name); EXPECT_EQ(2, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_noRestartCmd_restartFalse) +TEST_F(GenericArgsParsingTests, parseGenericArgs_noRestartCmd_restartFalse) { int i = 1; const int argc = 2; const char* kNoRestartCmd[argc] = { "stub", "--no-restart" }; - ArgParser argParser(NULL); - lib::synergy::ArgsBase argsBase; - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kNoRestartCmd, i); + m_argParser->parseGenericArgs(argc, kNoRestartCmd, i); EXPECT_FALSE(argsBase.m_restartable); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_restartCmd_restartTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_restartCmd_restartTrue) { int i = 1; const int argc = 2; const char* kRestartCmd[argc] = { "stub", "--restart" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kRestartCmd, i); + m_argParser->parseGenericArgs(argc, kRestartCmd, i); EXPECT_EQ(true, argsBase.m_restartable); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_backendCmd_backendTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_backendCmd_backendTrue) { int i = 1; const int argc = 2; const char* kBackendCmd[argc] = { "stub", "-z" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - argParser.parseGenericArgs(argc, kBackendCmd, i); + m_argParser->parseGenericArgs(argc, kBackendCmd, i); EXPECT_EQ(true, argsBase.m_backend); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_noHookCmd_noHookTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_noHookCmd_noHookTrue) { int i = 1; const int argc = 2; const char* kNoHookCmd[argc] = { "stub", "--no-hooks" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - argParser.parseGenericArgs(argc, kNoHookCmd, i); + m_argParser->parseGenericArgs(argc, kNoHookCmd, i); EXPECT_EQ(true, argsBase.m_noHooks); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_helpCmd_showHelp) +TEST_F(GenericArgsParsingTests, parseGenericArgs_helpCmd_showHelp) { g_helpShowed = false; int i = 1; @@ -213,7 +192,6 @@ TEST(GenericArgsParsingTests, parseGenericArgs_helpCmd_showHelp) const char* kHelpCmd[argc] = { "stub", "--help" }; NiceMock app; - lib::synergy::ArgsBase argsBase; ArgParser argParser(&app); argParser.setArgsBase(argsBase); ON_CALL(app, help()).WillByDefault(Invoke(showMockHelp)); @@ -225,7 +203,7 @@ TEST(GenericArgsParsingTests, parseGenericArgs_helpCmd_showHelp) } -TEST(GenericArgsParsingTests, parseGenericArgs_versionCmd_showVersion) +TEST_F(GenericArgsParsingTests, parseGenericArgs_versionCmd_showVersion) { g_versionShowed = false; int i = 1; @@ -233,61 +211,49 @@ TEST(GenericArgsParsingTests, parseGenericArgs_versionCmd_showVersion) const char* kVersionCmd[argc] = { "stub", "--version" }; NiceMock app; - lib::synergy::ArgsBase argsBase; ArgParser argParser(&app); argParser.setArgsBase(argsBase); + ON_CALL(app, version()).WillByDefault(Invoke(showMockVersion)); - + argParser.parseGenericArgs(argc, kVersionCmd, i); EXPECT_EQ(true, g_versionShowed); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_noTrayCmd_disableTrayTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_noTrayCmd_disableTrayTrue) { int i = 1; const int argc = 2; const char* kNoTrayCmd[argc] = { "stub", "--no-tray" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kNoTrayCmd, i); + m_argParser->parseGenericArgs(argc, kNoTrayCmd, i); EXPECT_EQ(true, argsBase.m_disableTray); EXPECT_EQ(1, i); } -TEST(GenericArgsParsingTests, parseGenericArgs_ipcCmd_enableIpcTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_ipcCmd_enableIpcTrue) { int i = 1; const int argc = 2; const char* kIpcCmd[argc] = { "stub", "--ipc" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kIpcCmd, i); + m_argParser->parseGenericArgs(argc, kIpcCmd, i); EXPECT_EQ(true, argsBase.m_enableIpc); EXPECT_EQ(1, i); } #ifndef WINAPI_XWINDOWS -TEST(GenericArgsParsingTests, parseGenericArgs_dragDropCmdOnNonLinux_enableDragDropTrue) +TEST_F(GenericArgsParsingTests, parseGenericArgs_dragDropCmdOnNonLinux_enableDragDropTrue) { int i = 1; const int argc = 2; const char* kDragDropCmd[argc] = { "stub", "--enable-drag-drop" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kDragDropCmd, i); + m_argParser->parseGenericArgs(argc, kDragDropCmd, i); EXPECT_EQ(true, argsBase.m_enableDragDrop); EXPECT_EQ(1, i); @@ -295,17 +261,13 @@ TEST(GenericArgsParsingTests, parseGenericArgs_dragDropCmdOnNonLinux_enableDragD #endif #ifdef WINAPI_XWINDOWS -TEST(GenericArgsParsingTests, parseGenericArgs_dragDropCmdOnLinux_enableDragDropFalse) +TEST_F(GenericArgsParsingTests, parseGenericArgs_dragDropCmdOnLinux_enableDragDropFalse) { int i = 1; const int argc = 2; const char* kDragDropCmd[argc] = { "stub", "--enable-drag-drop" }; - lib::synergy::ArgsBase argsBase; - ArgParser argParser(NULL); - argParser.setArgsBase(argsBase); - - argParser.parseGenericArgs(argc, kDragDropCmd, i); + m_argParser->parseGenericArgs(argc, kDragDropCmd, i); EXPECT_FALSE(argsBase.m_enableDragDrop); EXPECT_EQ(1, i);