[PATCH 4/7] test: Fix T050-new.sh on some Travis CI machines

Vladimir Panteleev notmuch at thecybershadow.net
Thu Aug 17 10:51:42 PDT 2017


On some system configurations, setting a breakpoint on the "add_file"
function then issuing "continue" in gdb causes the debugger to
seemingly jump over the add_file invocation. This results in a test
failure, as the "Handle files vanishing between scandir and add_file"
subtest expects add_file to be called and fail due to the vanishing
file. The compiler optimization level also plays a role - the problem
can be reproduced with CFLAGS having -O2 but not -Og.

This problem was observed manifesting as a test failure on Travis CI
configured with "dist: trusty" and "sudo: false". It was not
reproducible on a local Docker image of Travis' runtime environment,
so Travis' virtualization infrastructure likely plays a role as well.

* T050-new.sh: Breakpoint notmuch_database_add_message instead of
  add_file to the same effect, and avoid bad gdb behaviour on Travis
  CI.
---
 test/T050-new.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/test/T050-new.sh b/test/T050-new.sh
index ffa303ef..8b7ac4e1 100755
--- a/test/T050-new.sh
+++ b/test/T050-new.sh
@@ -309,7 +309,7 @@ cat <<EOF > notmuch-new-vanish.gdb
 set breakpoint pending on
 set logging file notmuch-new-vanish-gdb.log
 set logging on
-break add_file
+break notmuch_database_add_message
 commands
 shell rm -f ${MAIL_DIR}/vanish
 continue
-- 
2.13.3



More information about the notmuch mailing list