summaryrefslogtreecommitdiff
path: root/t/t9827-git-p4-change-filetype.sh
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2016-01-26 15:40:29 -0800
committerLibravatar Junio C Hamano <gitster@pobox.com>2016-01-26 15:40:29 -0800
commitc7dd1c5818111a86deffde1190b57d07efbeed0a (patch)
tree6e63b77be1e5b97ad144c7dce4d7c5d4109afa6b /t/t9827-git-p4-change-filetype.sh
parentMerge branch 'js/close-packs-before-gc' (diff)
parentgit-p4.py: add support for filetype change (diff)
downloadtgif-c7dd1c5818111a86deffde1190b57d07efbeed0a.tar.xz
Merge branch 'rp/p4-filetype-change'
* rp/p4-filetype-change: git-p4.py: add support for filetype change
Diffstat (limited to 't/t9827-git-p4-change-filetype.sh')
-rwxr-xr-xt/t9827-git-p4-change-filetype.sh66
1 files changed, 66 insertions, 0 deletions
diff --git a/t/t9827-git-p4-change-filetype.sh b/t/t9827-git-p4-change-filetype.sh
new file mode 100755
index 0000000000..7433998f47
--- /dev/null
+++ b/t/t9827-git-p4-change-filetype.sh
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+test_description='git p4 support for file type change'
+
+. ./lib-git-p4.sh
+
+test_expect_success 'start p4d' '
+ start_p4d
+'
+
+test_expect_success 'create files' '
+ (
+ cd "$cli" &&
+ p4 client -o | sed "/LineEnd/s/:.*/:unix/" | p4 client -i &&
+ cat >file1 <<-EOF &&
+ text without any funny substitution business
+ EOF
+ cat >file2 <<-EOF &&
+ second file whose type will change
+ EOF
+ p4 add file1 file2 &&
+ p4 submit -d "add files"
+ )
+'
+
+test_expect_success SYMLINKS 'change file to symbolic link' '
+ git p4 clone --dest="$git" //depot@all &&
+ test_when_finished cleanup_git &&
+ (
+ cd "$git" &&
+ git config git-p4.skipSubmitEdit true &&
+
+ rm file2 &&
+ ln -s file1 file2 &&
+ git add file2 &&
+ git commit -m "symlink file1 to file2" &&
+ git p4 submit &&
+ p4 filelog -m 1 //depot/file2 >filelog &&
+ grep "(symlink)" filelog
+ )
+'
+
+test_expect_success SYMLINKS 'change symbolic link to file' '
+ git p4 clone --dest="$git" //depot@all &&
+ test_when_finished cleanup_git &&
+ (
+ cd "$git" &&
+ git config git-p4.skipSubmitEdit true &&
+
+ rm file2 &&
+ cat >file2 <<-EOF &&
+ This is another content for the second file.
+ EOF
+ git add file2 &&
+ git commit -m "re-write file2" &&
+ git p4 submit &&
+ p4 filelog -m 1 //depot/file2 >filelog &&
+ grep "(text)" filelog
+ )
+'
+
+test_expect_success 'kill p4d' '
+ kill_p4d
+'
+
+test_done