On Sat, Jun 10, 2017 at 3:40 PM, Ben Peart <peartben@xxxxxxxxx> wrote: > +# fsmonitor works correctly with or without the untracked cache > +# but if it is available, we'll turn it on to ensure we test that > +# codepath as well. > + > +test_lazy_prereq UNTRACKED_CACHE ' > + { git update-index --test-untracked-cache; ret=$?; } && > + test $ret -ne 1 > +' > + > +if test_have_prereq UNTRACKED_CACHE; then > + git config core.untrackedcache true > +else > + git config core.untrackedcache false > +fi I wonder if it would be better to just do something like: ===================== test_expect_success 'setup' ' .... ' uc_values="false" test_have_prereq UNTRACKED_CACHE && uc_values="false true" for uc_val in $uc_values do test_expect_success "setup untracked cache to $uc_val" ' git config core.untrackedcache $uc_val ' test_expect_success 'refresh_index() invalidates fsmonitor cache' ' ... ' test_expect_success "status doesn't detect unreported modifications" ' ... ' ... done =====================