mirror of
https://github.com/git/git
synced 2024-08-27 19:49:21 +00:00
Merge branch 'jk/completion-tests'
* jk/completion-tests: t9902: add completion tests for "odd" filenames t9902: add a few basic completion tests
This commit is contained in:
commit
abc05cbcd3
|
@ -61,6 +61,15 @@ test_completion ()
|
|||
test_cmp expected out
|
||||
}
|
||||
|
||||
# Like test_completion, but reads expectation from stdin,
|
||||
# which is convenient when it is multiline. We also process "_" into
|
||||
# spaces to make test vectors more readable.
|
||||
test_completion_long ()
|
||||
{
|
||||
tr _ " " >expected &&
|
||||
test_completion "$1"
|
||||
}
|
||||
|
||||
newline=$'\n'
|
||||
|
||||
test_expect_success '__gitcomp - trailing space - options' '
|
||||
|
@ -228,4 +237,55 @@ test_expect_success 'general options plus command' '
|
|||
test_completion "git --no-replace-objects check" "checkout "
|
||||
'
|
||||
|
||||
test_expect_success 'setup for ref completion' '
|
||||
echo content >file1 &&
|
||||
echo more >file2 &&
|
||||
git add . &&
|
||||
git commit -m one &&
|
||||
git branch mybranch &&
|
||||
git tag mytag
|
||||
'
|
||||
|
||||
test_expect_success 'checkout completes ref names' '
|
||||
test_completion_long "git checkout m" <<-\EOF
|
||||
master_
|
||||
mybranch_
|
||||
mytag_
|
||||
EOF
|
||||
'
|
||||
|
||||
test_expect_success 'show completes all refs' '
|
||||
test_completion_long "git show m" <<-\EOF
|
||||
master_
|
||||
mybranch_
|
||||
mytag_
|
||||
EOF
|
||||
'
|
||||
|
||||
test_expect_success '<ref>: completes paths' '
|
||||
test_completion_long "git show mytag:f" <<-\EOF
|
||||
file1_
|
||||
file2_
|
||||
EOF
|
||||
'
|
||||
|
||||
test_expect_success 'complete tree filename with spaces' '
|
||||
echo content >"name with spaces" &&
|
||||
git add . &&
|
||||
git commit -m spaces &&
|
||||
test_completion_long "git show HEAD:nam" <<-\EOF
|
||||
name with spaces_
|
||||
EOF
|
||||
'
|
||||
|
||||
test_expect_failure 'complete tree filename with metacharacters' '
|
||||
echo content >"name with \${meta}" &&
|
||||
git add . &&
|
||||
git commit -m meta &&
|
||||
test_completion_long "git show HEAD:nam" <<-\EOF
|
||||
name with ${meta}_
|
||||
name with spaces_
|
||||
EOF
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Loading…
Reference in a new issue