! p4 changes -m 1 //depot/...
'
-test_expect_failure 'Clone the repo' '
+test_expect_success 'Clone the repo' '
git p4 clone --dest="$git" --changes-block-size=7 --verbose //depot/included@all
'
-test_expect_failure 'All files are present' '
+test_expect_success 'All files are present' '
echo file.txt >expected &&
test_write_lines outer0.txt outer1.txt outer2.txt outer3.txt outer4.txt >>expected &&
test_write_lines outer5.txt >>expected &&
test_cmp expected current
'
-test_expect_failure 'file.txt is correct' '
+test_expect_success 'file.txt is correct' '
echo 55 >expected &&
test_cmp expected "$git/file.txt"
'
-test_expect_failure 'Correct number of commits' '
+test_expect_success 'Correct number of commits' '
(cd "$git" && git log --oneline) >log &&
wc -l log &&
test_line_count = 43 log
'
-test_expect_failure 'Previous version of file.txt is correct' '
+test_expect_success 'Previous version of file.txt is correct' '
(cd "$git" && git checkout HEAD^^) &&
echo 53 >expected &&
test_cmp expected "$git/file.txt"
(cd "$cli" &&
>$1 &&
p4 add $1 &&
- p4 submit -d "Added a file" $1
+ p4 submit -d "Added file $1" $1
)
}
# This should pick up the 10 new files in "included", but not be confused
# by the additional files in "excluded"
-test_expect_failure 'Syncing files' '
+test_expect_success 'Syncing files' '
(
cd "$git" &&
git p4 sync --changes-block-size=7 &&
)
'
-test_expect_success 'kill p4d' '
- kill_p4d
+# Handling of multiple depot paths:
+# git p4 clone //depot/pathA //depot/pathB
+#
+test_expect_success 'Create a repo with multiple depot paths' '
+ client_view "//depot/pathA/... //client/pathA/..." \
+ "//depot/pathB/... //client/pathB/..." &&
+ mkdir -p "$cli/pathA" "$cli/pathB" &&
+ for p in pathA pathB
+ do
+ for i in $(test_seq 1 10)
+ do
+ p4_add_file "$p/file$p$i"
+ done
+ done
+'
+
+test_expect_success 'Clone repo with multiple depot paths' '
+ test_when_finished cleanup_git &&
+ (
+ cd "$git" &&
+ git p4 clone --changes-block-size=4 //depot/pathA@all //depot/pathB@all \
+ --destination=dest &&
+ ls -1 dest >log &&
+ test_line_count = 20 log
+ )
+'
+
+test_expect_success 'Clone repo with self-sizing block size' '
+ test_when_finished cleanup_git &&
+ git p4 clone --changes-block-size=1000000 //depot@all --destination="$git" &&
+ git -C "$git" log --oneline >log &&
+ test_line_count \> 10 log
'
test_done