Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Re-enable unit tests
authorSteve Brokenshire <sbrokenshire@xestia.co.uk>
Sun, 29 Nov 2020 18:43:12 +0000 (18:43 +0000)
committerSteve Brokenshire <sbrokenshire@xestia.co.uk>
Sun, 29 Nov 2020 19:04:10 +0000 (19:04 +0000)
source/tests/CMakeLists.txt
source/tests/xestiaab_test.cpp

index aa4c95e..f67eb47 100644 (file)
@@ -1,9 +1,11 @@
+set(TARGET_NAME "xestiaab_test")
+
 set(FILE_LIST xestiaab_test.cpp
               xestiaab_carddav.cpp
               classes/FakeConnectionObject.cpp
               classes/FakeConnectionObject.h)
 
-add_executable(xestiaab_test
+add_executable(${TARGET_NAME}
     ${FILE_LIST})
 
 include_directories(..)
@@ -26,6 +28,9 @@ target_link_libraries(xestiaab_test
     vcard
     widgets)
 
-add_custom_command(TARGET xestiaab_test POST_BUILD
+add_custom_command(TARGET ${TARGET_NAME} POST_BUILD
     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/tests/files/* ${CMAKE_BINARY_DIR}/tests/.
 )
+
+gtest_add_tests(TARGET ${TARGET_NAME}
+                WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/tests/files)
\ No newline at end of file
index 7dc8491..05a4995 100644 (file)
 // with Xestia Address Book. If not, see <http://www.gnu.org/licenses/>
 
 #include <gtest/gtest.h>
-#include <iostream>
-#include <string>
 #include "xestiaab_contactload.h"
 #include "xestiaab_contactsave.h"
 #include "xestiaab_convert.h"
 #include "xestiaab_vcard.h"
 #include "xestiaab_common.h"
 
-enum MenuOpts {
-       TESTS_CARDDAV = 1, 
-       TESTS_CONTACTLOAD,
-       TESTS_CONTACTSAVE, 
-       TESTS_VCARD,
-       TESTS_CONVERT,
-       TESTS_COMMON,
-       TESTS_ALL,
-       TESTS_QUIT
-};
-
-void printn(std::string text){
-// printn: Print a line and end with a newline (\n).
-
-       std::cout << text << std::endl;
-
-}
-
-void printmenu(){
-// printmenu: Print the menu.
-
-       std::cout << "Select an option:" << std::endl << std::endl;
-       std::cout << TESTS_CARDDAV << ". CardDAV Object" << std::endl;
-       std::cout << TESTS_CONTACTLOAD << ". Contact Loading" << std::endl;
-       std::cout << TESTS_CONTACTSAVE << ". Contact Saving" << std::endl;
-       std::cout << TESTS_VCARD << ". vCard Object" << std::endl;
-       std::cout << TESTS_CONVERT << ". Contact Conversion" << std::endl;
-       std::cout << TESTS_COMMON << ". Common Functions" << std::endl;
-       std::cout << TESTS_ALL << ". All Tests" << std::endl;
-       std::cout << TESTS_QUIT << ". Quit" << std::endl;
-       std::cout << std::endl;
-
-}
-
-int main(int argc, char* argv[]){
-
-       ::testing::InitGoogleTest(&argc, argv);
-
-       printn("Xestia Address Book Unit Testing Application");
-       printn("(c)2015 Xestia Software Development");
-       printn("Note: Unit testing is currently in development");
-       printn("");
-
-       bool ExitEnabled = false;
-       std::string StringOption = "";
-       int TestResult = 0;
-
-       while(ExitEnabled == false){
-       
-               printmenu();
-
-               // Get user input.
-
-               std::cout << "Select Option: "; 
-               std::cin >> StringOption;
-               
-               int IntOption = -1;
-               
-               // Check if input is a number.
-               
-               try{
-                       IntOption = stoi(StringOption);
-               }
-               
-               // Return to the top of the while statement if input
-               // really isn't a number.
-               
-               catch(std::invalid_argument e){
-                       printn("Error: Selected option is not a number.");
-                       continue;
-               }
-               
-               // Find which option has been selected from the
-               // input.
-               
-               switch(IntOption){
-               
-                       case TESTS_CARDDAV:
-                               printn("Running CardDAV tests...");
-                               ::testing::GTEST_FLAG(filter) = "CardDAV*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_CONTACTLOAD:
-                               printn("Running Contact Loading tests...");
-                               ::testing::GTEST_FLAG(filter) = "ContactLoad*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_CONTACTSAVE:
-                               printn("Running Contact Saving tests...");
-                               ::testing::GTEST_FLAG(filter) = "ContactSave*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_CONVERT:
-                               printn("Running Contact Conversion tests...");
-                               ::testing::GTEST_FLAG(filter) = "ConvertCmdLine*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_VCARD:
-                               printn("Running vCard tests...");
-                               ::testing::GTEST_FLAG(filter) = "vCard*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_COMMON:
-                               printn("Running Common Functions tests...");
-                               ::testing::GTEST_FLAG(filter) = "CommonFunctions*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_ALL:
-                               printn("Running all tests...");
-                               ::testing::GTEST_FLAG(filter) = "*";
-                               TestResult = RUN_ALL_TESTS();
-                               break;
-                       case TESTS_QUIT:
-                               return 0;
-                               break;
-                       default:
-                               printn("Invalid menu number given."); 
-                               break;
-               
-               }
-       
-       }
-
+int main(int argc, char **argv)
+{    
+    ::testing::GTEST_FLAG(shuffle) = true;
+    ::testing::InitGoogleTest(&argc, argv); 
+    return RUN_ALL_TESTS();
 }
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy