summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorLibravatar Lessley Dennington <lessleydennington@gmail.com>2022-02-07 17:31:44 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2022-02-08 10:15:43 -0800
commitc5f5c5082f813a875c213445135a24c2507021dd (patch)
tree194f5e9d663b7f503124dc2e8987090ad8e593e7 /t
parentcompletion: address sparse-checkout issues (diff)
downloadtgif-c5f5c5082f813a875c213445135a24c2507021dd.tar.xz
completion: improve sparse-checkout cone mode directory completion
Use new __gitcomp_directories method to complete directory names in cone mode sparse-checkouts. This method addresses the caveat of poor performance in monorepos from the previous commit (by completing only one level of directories). The unusual character caveat from the previous commit will be fixed by the final commit in this series. Co-authored-by: Elijah Newren <newren@gmail.com> Co-authored-by: Lessley Dennington <lessleydennington@gmail.com> Signed-off-by: Lessley Dennington <lessleydennington@gmail.com> Reviewed-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-xt/t9902-completion.sh38
1 files changed, 22 insertions, 16 deletions
diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh
index 3b287d72dc..f309c7532e 100755
--- a/t/t9902-completion.sh
+++ b/t/t9902-completion.sh
@@ -1477,21 +1477,30 @@ test_expect_success 'cone mode sparse-checkout completes directory names' '
(
cd sparse-checkout &&
test_completion "git sparse-checkout set f" <<-\EOF
- folder1 Z
- folder1/0 Z
- folder1/0/1 Z
- folder2 Z
- folder2/0 Z
- folder3 Z
+ folder1/
+ folder2/
+ folder3/
+ EOF
+ ) &&
+
+ (
+ cd sparse-checkout &&
+ test_completion "git sparse-checkout set folder1/" <<-\EOF
+ folder1/0/
+ EOF
+ ) &&
+
+ (
+ cd sparse-checkout &&
+ test_completion "git sparse-checkout set folder1/0/" <<-\EOF
+ folder1/0/1/
EOF
) &&
(
cd sparse-checkout/folder1 &&
- test_completion "git sparse-checkout add " <<-\EOF
- ./ Z
- 0 Z
- 0/1 Z
+ test_completion "git sparse-checkout add 0" <<-\EOF
+ 0/
EOF
)
'
@@ -1517,12 +1526,9 @@ test_expect_success 'git sparse-checkout set --cone completes directory names' '
(
cd sparse-checkout &&
test_completion "git sparse-checkout set --cone f" <<-\EOF
- folder1 Z
- folder1/0 Z
- folder1/0/1 Z
- folder2 Z
- folder2/0 Z
- folder3 Z
+ folder1/
+ folder2/
+ folder3/
EOF
)
'