Browse Source

use 'make check' for unit tests, test appMockup

Julius Pfrommer 10 years ago
parent
commit
17168fceb1
6 changed files with 60 additions and 12 deletions
  1. 2 2
      .travis.yml
  2. 1 0
      CMakeLists.txt
  3. 1 0
      README.md
  4. 22 9
      tests/CMakeLists.txt
  5. 0 1
      tests/check_builtin.c
  6. 34 0
      tests/check_startup.c

+ 2 - 2
.travis.yml

@@ -36,7 +36,7 @@ script:
    - echo "Debug build and unit tests"
    - make clean
    - cmake -DCMAKE_BUILD_TYPE=Debug -DUNIT_TESTS=ON -DENABLE_COVERAGE=ON .. 
-   - make && make test
+   - make && make check
 after_success:
    - git clone --depth=50 -b gh-pages https://$GITAUTH@github.com/acplt/open62541
    - rm -rf open62541/doxygen
@@ -50,6 +50,6 @@ after_success:
    - git push https://$GITAUTH@github.com/acplt/open62541
    - cd .. && cd ..
    - rm -rf open62541
-   - coveralls --gcov /usr/bin/gcov-4.8 -r ../
+   - coveralls --gcov /usr/bin/gcov-4.8 -E '.*\.h' -r ../
    - cd ..
    - ./tools/.coverity.sh

+ 1 - 0
CMakeLists.txt

@@ -161,5 +161,6 @@ endif(GENERATE_DOCUMENTATION)
 option(UNIT_TESTS "Run unit tests after building" OFF)
 if(UNIT_TESTS)
     enable_testing()
+	add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND})
     add_subdirectory(tests)
 endif(UNIT_TESTS)

+ 1 - 0
README.md

@@ -33,6 +33,7 @@ sudo apt-get install graphviz doxygen # for documentation generation
 
 ccmake .. # to select features for compilation. Use "cmake-gui .." for more eye-candy
 make
+make check # unit tests
 ```
 
 ### Windows (Visual Studio)

+ 22 - 9
tests/CMakeLists.txt

@@ -1,36 +1,49 @@
 find_package(Check REQUIRED)
 find_package(Threads REQUIRED)
 
-set(LIBS open62541 check m rt pthread)
+set(LIBS open62541 ${CHECK_LIBRARIES} m rt pthread)
 
-add_executable(check_builtin check_builtin.c)
+add_executable(check_builtin EXCLUDE_FROM_ALL check_builtin.c)
 target_link_libraries(check_builtin ${LIBS})
 add_test(builtin ${CMAKE_CURRENT_BINARY_DIR}/check_builtin)
+add_dependencies(check check_builtin)
 
-add_executable(check_memory check_memory.c)
+add_executable(check_memory EXCLUDE_FROM_ALL check_memory.c)
 target_link_libraries(check_memory ${LIBS})
 add_test(memory ${CMAKE_CURRENT_BINARY_DIR}/check_memory)
+add_dependencies(check check_memory)
 
-add_executable(check_stack check_stack.c)
+add_executable(check_stack EXCLUDE_FROM_ALL check_stack.c)
 target_link_libraries(check_stack ${LIBS})
 add_test(stack ${CMAKE_CURRENT_BINARY_DIR}/check_stack)
+add_dependencies(check check_stack)
 
-add_executable(check_list check_list.c)
+add_executable(check_list EXCLUDE_FROM_ALL check_list.c)
 target_link_libraries(check_list ${LIBS})
 add_test(list ${CMAKE_CURRENT_BINARY_DIR}/check_list)
+add_dependencies(check check_list)
 
-add_executable(check_indexedList check_indexedList.c)
+add_executable(check_indexedList EXCLUDE_FROM_ALL check_indexedList.c)
 target_link_libraries(check_indexedList ${LIBS})
 add_test(indexedList ${CMAKE_CURRENT_BINARY_DIR}/check_indexedList)
+add_dependencies(check check_indexedList)
 
-add_executable(check_base64 check_base64.c)
+add_executable(check_base64 EXCLUDE_FROM_ALL check_base64.c)
 target_link_libraries(check_base64 ${LIBS})
 add_test(base64 ${CMAKE_CURRENT_BINARY_DIR}/check_base64)
+add_dependencies(check check_base64)
 
-add_executable(check_services_view check_services_view.c)
+add_executable(check_services_view EXCLUDE_FROM_ALL check_services_view.c)
 target_link_libraries(check_services_view ${LIBS})
 add_test(services_view ${CMAKE_CURRENT_BINARY_DIR}/check_services_view)
+add_dependencies(check check_services_view)
 
-add_executable(check_namespace check_namespace.c)
+add_executable(check_namespace EXCLUDE_FROM_ALL check_namespace.c)
 target_link_libraries(check_namespace ${LIBS})
 add_test(namespace ${CMAKE_CURRENT_BINARY_DIR}/check_namespace)
+add_dependencies(check check_namespace)
+
+add_executable(check_startup EXCLUDE_FROM_ALL check_startup.c)
+target_link_libraries(check_startup ${LIBS})
+add_test(startup ${CMAKE_CURRENT_BINARY_DIR}/check_startup)
+add_dependencies(check check_startup)

+ 0 - 1
tests/check_builtin.c

@@ -5,7 +5,6 @@
 #include "ua_transport.h"
 #include "check.h"
 
-
 START_TEST(UA_Boolean_calcSizeWithNullArgumentShallReturnStorageSize) {
 	// given
 	UA_Boolean *arg = UA_NULL;

+ 34 - 0
tests/check_startup.c

@@ -0,0 +1,34 @@
+#include "ua_application.h"
+#include "check.h"
+
+START_TEST(testAppMockup) {
+	appMockup_init();
+}
+END_TEST
+
+
+Suite *testSuite_builtin(void) {
+	Suite *s = suite_create("Test server startup");
+
+	TCase *tc_ns0 = tcase_create("initialise namespace 0");
+	tcase_add_test(tc_ns0, testAppMockup);
+	suite_add_tcase(s, tc_ns0);
+
+	return s;
+}
+
+
+int main(void) {
+	int      number_failed = 0;
+	Suite   *s;
+	SRunner *sr;
+
+	s  = testSuite_builtin();
+	sr = srunner_create(s);
+	//srunner_set_fork_status(sr, CK_NOFORK);
+	srunner_run_all(sr, CK_NORMAL);
+	number_failed += srunner_ntests_failed(sr);
+	srunner_free(sr);
+
+	return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
+}