diff options
author | Thomas Rast <trast@inf.ethz.ch> | 2013-04-24 17:54:35 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-04-25 00:12:48 +0400 |
commit | abf5f8723cc65c499eb6b65b07bd935f43525b24 (patch) | |
tree | 58d325ec7e7ca6f7846119a8cf0d04e31ea2784f /t/t5505-remote.sh | |
parent | 3e7bb5da9f58a8b0d066d1511ab95b5df2f8c6b1 (diff) |
remote: add a test for extra arguments, according to docs
This adds one test or comment for each subcommand of git-remote
according to its current documentation. All but 'set-branches' and
'update' are listed as taking only a fixed number of arguments; for
those we can write a test with one more (bogus) argument, and see if
the command notices that.
They fail on several counts: 'add' does not check for extra arguments,
and 'show' and 'prune' actually iterate over remotes (i.e., take any
number of args). We'll fix them in the next two patches.
The -f machinery is only there to make the tests readable while still
ensuring they pass as a whole, and will be removed in the final patch.
Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t5505-remote.sh')
-rwxr-xr-x | t/t5505-remote.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/t/t5505-remote.sh b/t/t5505-remote.sh index ccc55ebf4b..c23e8482f0 100755 --- a/t/t5505-remote.sh +++ b/t/t5505-remote.sh @@ -1003,4 +1003,31 @@ test_expect_success 'remote set-url --delete baz' ' cmp expect actual ' +test_expect_success 'extra args: setup' ' + # add a dummy origin so that this does not trigger failure + git remote add origin . +' + +test_extra_arg () { + expect="success" + if test "z$1" = "z-f"; then + expect=failure + shift + fi + test_expect_$expect "extra args: $*" " + test_must_fail git remote $* bogus_extra_arg 2>actual && + grep '^usage:' actual + " +} + +test_extra_arg -f add nick url +test_extra_arg rename origin newname +test_extra_arg remove origin +test_extra_arg set-head origin master +# set-branches takes any number of args +test_extra_arg set-url origin newurl oldurl +test_extra_arg -f show origin +test_extra_arg -f prune origin +# update takes any number of args + test_done |