Raw
1 #!/bin/sh
2
3 test_description="Test git-clean performance"
4
5 . ./perf-lib.sh
6
7 test_perf_default_repo
8 test_checkout_worktree
9
10 test_expect_success 'setup untracked directory with many sub dirs' '
11 rm -rf 500_sub_dirs 100000_sub_dirs clean_test_dir &&
12 mkdir 500_sub_dirs 100000_sub_dirs clean_test_dir &&
13 for i in $(test_seq 1 500)
14 do
15 mkdir 500_sub_dirs/dir$i || return $?
16 done &&
17 for i in $(test_seq 1 200)
18 do
19 cp -r 500_sub_dirs 100000_sub_dirs/dir$i || return $?
20 done
21 '
22
23 test_perf 'clean many untracked sub dirs, check for nested git' '
24 git clean -n -q -f -d 100000_sub_dirs/
25 '
26
27 test_perf 'clean many untracked sub dirs, ignore nested git' '
28 git clean -n -q -f -f -d 100000_sub_dirs/
29 '
30
31 test_perf 'ls-files -o' '
32 git ls-files -o
33 '
34
35 test_done