travis: Enable TSAN for sanity checking the terminal UI

This commit is contained in:
Thiago de Arruda 2015-08-28 12:29:15 -03:00
parent 5bb4139e6c
commit 7eaeed112e
3 changed files with 24 additions and 15 deletions

View File

@ -61,6 +61,7 @@ build_nvim() {
exit 1 exit 1
fi fi
if [ "$CLANG_SANITIZER" != "TSAN" ]; then
echo "Building libnvim." echo "Building libnvim."
if ! ${MAKE_CMD} libnvim; then if ! ${MAKE_CMD} libnvim; then
exit 1 exit 1
@ -70,10 +71,15 @@ build_nvim() {
if ! ${MAKE_CMD} nvim-test; then if ! ${MAKE_CMD} nvim-test; then
exit 1 exit 1
fi fi
fi
# Invoke nvim to trigger *San early. # Invoke nvim to trigger *San early.
bin/nvim --version if ! (bin/nvim --version && bin/nvim -u NONE -e -c ':qall'); then
bin/nvim -u NONE -e -c ':qall' asan_check "${LOG_DIR}"
exit 1
fi
asan_check "${LOG_DIR}"
cd "${TRAVIS_BUILD_DIR}" cd "${TRAVIS_BUILD_DIR}"
} }

View File

@ -17,8 +17,12 @@ source "${CI_DIR}/common/test.sh"
build_nvim build_nvim
run_unittests if [ "$CLANG_SANITIZER" != "TSAN" ]; then
run_functionaltests # Additional threads are only created when the builtin UI starts, which
# doesn't happen in the unit/functional tests
run_unittests
run_functionaltests
fi
run_oldtests run_oldtests
install_nvim install_nvim

View File

@ -77,10 +77,9 @@ matrix:
- os: linux - os: linux
compiler: clang-3.6 compiler: clang-3.6
env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=MSAN env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=MSAN
# FIXME (tarruda): Uncomment when TSan tests don't hang anymore. - os: linux
#- os: linux compiler: clang-3.6
# compiler: clang-3.6 env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=TSAN
# env: GCOV=llvm-cov-3.6 CLANG_SANITIZER=TSAN
- os: osx - os: osx
compiler: clang compiler: clang
env: GCOV=gcov env: GCOV=gcov