diff --git a/.gitignore b/.gitignore index ea47eb3..d452689 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ -tests/unittest-cpp CMakeFiles tests/CMakeFiles tests/Debug diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..d9229ae --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "tests/unittest-cpp"] + path = tests/unittest-cpp + url = https://github.com/Microsoft/unittest-cpp.git diff --git a/.travis.yml b/.travis.yml index 3c64230..3fed41b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -56,7 +56,6 @@ install: before_script: - cd ${TRAVIS_BUILD_DIR} - - git clone --depth 1 https://github.com/Microsoft/unittest-cpp tests/unittest-cpp - cmake -H. -Bb -DCMAKE_CXX_COMPILER=$COMPILER -DCMAKE_INSTALL_PREFIX=$PWD/o -DCMAKE_BUILD_TYPE=$BUILD_TYPE - cmake --build b diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 7990ec3..e6527da 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -2,6 +2,10 @@ cmake_minimum_required(VERSION 2.8.7) project(GSLTests CXX) +if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/unittest-cpp/tests) + execute_process(COMMAND git submodule update --init WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}") +endif() + add_subdirectory(unittest-cpp) include_directories( @@ -28,10 +32,6 @@ else() endif() endif() -if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/unittest-cpp) - message(FATAL_ERROR "Could not find unittest-cpp enlistment. Please run 'git clone https://github.com/Microsoft/unittest-cpp.git unittest-cpp' in the tests directory") -endif() - function(add_gsl_test name) add_executable(${name} ${name}.cpp ../include/gsl.h ../include/gsl_assert.h ../include/gsl_util.h ../include/span.h ../include/string_span.h) target_link_libraries(${name} UnitTest++) diff --git a/tests/unittest-cpp b/tests/unittest-cpp new file mode 160000 index 0000000..dc6b908 --- /dev/null +++ b/tests/unittest-cpp @@ -0,0 +1 @@ +Subproject commit dc6b90838014ab985bf3cd74ac17ad9d00e1fbcb