summaryrefslogtreecommitdiffstats
path: root/t/t6136-pathspec-in-bare.sh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xt/t6136-pathspec-in-bare.sh39
1 files changed, 39 insertions, 0 deletions
diff --git a/t/t6136-pathspec-in-bare.sh b/t/t6136-pathspec-in-bare.sh
new file mode 100755
index 0000000..2db37a6
--- /dev/null
+++ b/t/t6136-pathspec-in-bare.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+test_description='diagnosing out-of-scope pathspec'
+
+TEST_PASSES_SANITIZE_LEAK=true
+. ./test-lib.sh
+
+test_expect_success 'setup a bare and non-bare repository' '
+ test_commit file1 &&
+ git clone --bare . bare
+'
+
+test_expect_success 'log and ls-files in a bare repository' '
+ (
+ cd bare &&
+ test_must_fail git log -- .. >out 2>err &&
+ test_must_be_empty out &&
+ test_grep "outside repository" err &&
+
+ test_must_fail git ls-files -- .. >out 2>err &&
+ test_must_be_empty out &&
+ test_grep "outside repository" err
+ )
+'
+
+test_expect_success 'log and ls-files in .git directory' '
+ (
+ cd .git &&
+ test_must_fail git log -- .. >out 2>err &&
+ test_must_be_empty out &&
+ test_grep "outside repository" err &&
+
+ test_must_fail git ls-files -- .. >out 2>err &&
+ test_must_be_empty out &&
+ test_grep "outside repository" err
+ )
+'
+
+test_done