directory rename detection: more involved edge/corner testcases
[git] / t / perf / p7300-clean.sh
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