Merge branch 'bc/object-id'
[gitweb.git] / t / t7300-clean.sh
index 8dbe950bb09bad34b46496508b2afd0242a8d2aa..99be5d95d063f85873a4cb5c5c7ebefd8ebfc990 100755 (executable)
@@ -119,10 +119,7 @@ test_expect_success C_LOCALE_OUTPUT 'git clean with relative prefix' '
                git clean -n ../src |
                sed -n -e "s|^Would remove ||p"
        ) &&
-       test "$would_clean" = ../src/part3.c || {
-               echo "OOps <$would_clean>"
-               false
-       }
+       verbose test "$would_clean" = ../src/part3.c
 '
 
 test_expect_success C_LOCALE_OUTPUT 'git clean with absolute path' '
@@ -134,10 +131,7 @@ test_expect_success C_LOCALE_OUTPUT 'git clean with absolute path' '
                git clean -n "$(pwd)/../src" |
                sed -n -e "s|^Would remove ||p"
        ) &&
-       test "$would_clean" = ../src/part3.c || {
-               echo "OOps <$would_clean>"
-               false
-       }
+       verbose test "$would_clean" = ../src/part3.c
 '
 
 test_expect_success 'git clean with out of work tree relative path' '
@@ -511,4 +505,20 @@ test_expect_success SANITY 'git clean -d with an unreadable empty directory' '
        ! test -d foo
 '
 
+test_expect_success 'git clean -d respects pathspecs (dir is prefix of pathspec)' '
+       mkdir -p foo &&
+       mkdir -p foobar &&
+       git clean -df foobar &&
+       test_path_is_dir foo &&
+       test_path_is_missing foobar
+'
+
+test_expect_success 'git clean -d respects pathspecs (pathspec is prefix of dir)' '
+       mkdir -p foo &&
+       mkdir -p foobar &&
+       git clean -df foo &&
+       test_path_is_missing foo &&
+       test_path_is_dir foobar
+'
+
 test_done