1#!/bin/sh
2
3test_description="Test git-clean performance"
4
5. ./perf-lib.sh
6
7test_perf_default_repo
8test_checkout_worktree
9
10test_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
23test_perf 'clean many untracked sub dirs, check for nested git' '
24 git clean -n -q -f -d 100000_sub_dirs/
25'
26
27test_perf 'clean many untracked sub dirs, ignore nested git' '
28 git clean -n -q -f -f -d 100000_sub_dirs/
29'
30
31test_perf 'ls-files -o' '
32 git ls-files -o
33'
34
35test_done