summaryrefslogtreecommitdiff
path: root/t/t9806-git-p4-options.sh
diff options
context:
space:
mode:
authorPete Wyckoff <pw@padd.com>2011-12-24 21:07:35 -0500
committerJunio C Hamano <gitster@pobox.com>2011-12-27 10:19:30 -0800
commit58c8bc7c1aa0c7cf71c524cc4531a19ef72ea706 (patch)
treeceb5533550546e2bd5774fc82b44ce26865d7c9f /t/t9806-git-p4-options.sh
parent1471c6b1558f45fa11ad606fc9ea72261d965284 (diff)
downloadgit-58c8bc7c1aa0c7cf71c524cc4531a19ef72ea706.tar.gz
git-p4: honor --changesfile option and test
When an explicit list of changes is given, it makes no sense to use @all or @3,5 or any of the other p4 revision specifiers. Make the code notice when this happens, instead of just ignoring --changesfile. Test it. Signed-off-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t9806-git-p4-options.sh')
-rwxr-xr-xt/t9806-git-p4-options.sh23
1 files changed, 23 insertions, 0 deletions
diff --git a/t/t9806-git-p4-options.sh b/t/t9806-git-p4-options.sh
index 7e2e45af17..7a1dba6e17 100755
--- a/t/t9806-git-p4-options.sh
+++ b/t/t9806-git-p4-options.sh
@@ -38,6 +38,29 @@ test_expect_success 'clone --branch' '
)
'
+test_expect_success 'clone --changesfile' '
+ cf="$TRASH_DIRECTORY/cf" &&
+ test_when_finished "rm \"$cf\"" &&
+ printf "1\n3\n" >"$cf" &&
+ "$GITP4" clone --changesfile="$cf" --dest="$git" //depot &&
+ test_when_finished cleanup_git &&
+ (
+ cd "$git" &&
+ git log --oneline p4/master >lines &&
+ test_line_count = 2 lines
+ test_path_is_file file1 &&
+ test_path_is_missing file2 &&
+ test_path_is_file file3
+ )
+'
+
+test_expect_success 'clone --changesfile, @all' '
+ cf="$TRASH_DIRECTORY/cf" &&
+ test_when_finished "rm \"$cf\"" &&
+ printf "1\n3\n" >"$cf" &&
+ test_must_fail "$GITP4" clone --changesfile="$cf" --dest="$git" //depot@all
+'
+
test_expect_success 'kill p4d' '
kill_p4d
'