clone_submodule: avoid using `access()` on directories
[git.git] / t / t0068-for-each-repo.sh
blobc6e0d655630638853b6831350618bc10b15de6e2
1 #!/bin/sh
3 test_description='git for-each-repo builtin'
5 . ./test-lib.sh
7 test_expect_success 'run based on configured value' '
8 git init one &&
9 git init two &&
10 git init three &&
11 git init ~/four &&
12 git -C two commit --allow-empty -m "DID NOT RUN" &&
13 git config run.key "$TRASH_DIRECTORY/one" &&
14 git config --add run.key "$TRASH_DIRECTORY/three" &&
15 git config --add run.key "~/four" &&
16 git for-each-repo --config=run.key commit --allow-empty -m "ran" &&
17 git -C one log -1 --pretty=format:%s >message &&
18 grep ran message &&
19 git -C two log -1 --pretty=format:%s >message &&
20 ! grep ran message &&
21 git -C three log -1 --pretty=format:%s >message &&
22 grep ran message &&
23 git -C ~/four log -1 --pretty=format:%s >message &&
24 grep ran message &&
25 git for-each-repo --config=run.key -- commit --allow-empty -m "ran again" &&
26 git -C one log -1 --pretty=format:%s >message &&
27 grep again message &&
28 git -C two log -1 --pretty=format:%s >message &&
29 ! grep again message &&
30 git -C three log -1 --pretty=format:%s >message &&
31 grep again message &&
32 git -C ~/four log -1 --pretty=format:%s >message &&
33 grep again message
36 test_expect_success 'do nothing on empty config' '
37 # the whole thing would fail if for-each-ref iterated even
38 # once, because "git help --no-such-option" would fail
39 git for-each-repo --config=bogus.config -- help --no-such-option
42 test_done