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
|
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'
|
newline=$'\n'
|
||||||
|
|
||||||
test_expect_success '__gitcomp - trailing space - options' '
|
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_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
|
test_done
|
||||||
|
Loading…
Reference in New Issue
Block a user