diff options
Diffstat (limited to '')
-rwxr-xr-x | t/t3102-ls-tree-wildcards.sh | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/t/t3102-ls-tree-wildcards.sh b/t/t3102-ls-tree-wildcards.sh new file mode 100755 index 0000000..3942db2 --- /dev/null +++ b/t/t3102-ls-tree-wildcards.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +test_description='ls-tree with(out) globs' + +TEST_PASSES_SANITIZE_LEAK=true +. ./test-lib.sh + +test_expect_success 'setup' ' + mkdir a aa "a[a]" && + touch a/one aa/two "a[a]/three" && + git add a/one aa/two "a[a]/three" && + git commit -m test +' + +test_expect_success 'ls-tree a[a] matches literally' ' + cat >expect <<-EOF && + 100644 blob $EMPTY_BLOB a[a]/three + EOF + git ls-tree -r HEAD "a[a]" >actual && + test_cmp expect actual +' + +test_expect_success 'ls-tree outside prefix' ' + cat >expect <<-EOF && + 100644 blob $EMPTY_BLOB ../a[a]/three + EOF + ( cd aa && git ls-tree -r HEAD "../a[a]" ) >actual && + test_cmp expect actual +' + +test_expect_failure 'ls-tree does not yet support negated pathspec' ' + git ls-files ":(exclude)a" "a*" >expect && + git ls-tree --name-only -r HEAD ":(exclude)a" "a*" >actual && + test_cmp expect actual +' + +test_done |