test_expect_success 'subdirectory filter result looks okay' '
        test 2 = $(git rev-list sub | wc -l) &&
        git show sub:new &&
-       ! git show sub:subdir
+       test_must_fail git show sub:subdir
 '
 
 test_expect_success 'setup and filter history that requires --full-history' '
        test 3 = $(git rev-list -1 --parents sub-master | wc -w) &&
        git show sub-master^:new &&
        git show sub-master^2:new &&
-       ! git show sub:subdir
+       test_must_fail git show sub:subdir
 '
 
 test_expect_success 'use index-filter to move into a subdirectory' '
 
 test_expect_success 'stops when msg filter fails' '
        old=$(git rev-parse HEAD) &&
-       ! git-filter-branch -f --msg-filter false HEAD &&
+       test_must_fail git-filter-branch -f --msg-filter false HEAD &&
        test $old = $(git rev-parse HEAD) &&
        rm -rf .git-rewrite
 '
 '
 
 test_expect_success 'barf on invalid name' '
-       ! git filter-branch -f master xy-problem &&
-       ! git filter-branch -f HEAD^
+       test_must_fail git filter-branch -f master xy-problem &&
+       test_must_fail git filter-branch -f HEAD^
 '
 
 test_expect_success '"map" works in commit filter' '
        git add foo &&
        git commit -m "Adding a file" &&
        git filter-branch --tree-filter "rm -fr foo" &&
-       ! git ls-files --error-unmatch "foo/$name" &&
+       test_must_fail git ls-files --error-unmatch "foo/$name" &&
        test $(git rev-parse --verify rerere) != $(git rev-parse --verify A)
 
 '