mirror of
https://github.com/git/git
synced 2024-08-27 19:49:21 +00:00
![Derrick Stolee](/assets/img/avatar_default.png)
The word "whitelist" has cultural implications that are not inclusive. Thankfully, it is not difficult to reword and avoid its use. Focus on changes in the test scripts, since most of the changes are in comments and test names. The renamed test_allow_var helper is only used once inside the widely-used test_proto helper. Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
44 lines
1.2 KiB
Bash
Executable file
44 lines
1.2 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
test_description='test protocol filtering with submodules'
|
|
. ./test-lib.sh
|
|
. "$TEST_DIRECTORY"/lib-proto-disable.sh
|
|
|
|
setup_ext_wrapper
|
|
setup_ssh_wrapper
|
|
|
|
test_expect_success 'setup repository with submodules' '
|
|
mkdir remote &&
|
|
git init remote/repo.git &&
|
|
(cd remote/repo.git && test_commit one) &&
|
|
# submodule-add should probably trust what we feed it on the cmdline,
|
|
# but its implementation is overly conservative.
|
|
GIT_ALLOW_PROTOCOL=ssh git submodule add remote:repo.git ssh-module &&
|
|
GIT_ALLOW_PROTOCOL=ext git submodule add "ext::fake-remote %S repo.git" ext-module &&
|
|
git commit -m "add submodules"
|
|
'
|
|
|
|
test_expect_success 'clone with recurse-submodules fails' '
|
|
test_must_fail git clone --recurse-submodules . dst
|
|
'
|
|
|
|
test_expect_success 'setup individual updates' '
|
|
rm -rf dst &&
|
|
git clone . dst &&
|
|
git -C dst submodule init
|
|
'
|
|
|
|
test_expect_success 'update of ssh allowed' '
|
|
git -C dst submodule update ssh-module
|
|
'
|
|
|
|
test_expect_success 'update of ext not allowed' '
|
|
test_must_fail git -C dst submodule update ext-module
|
|
'
|
|
|
|
test_expect_success 'user can filter protocols with GIT_ALLOW_PROTOCOL' '
|
|
GIT_ALLOW_PROTOCOL=ext git -C dst submodule update ext-module
|
|
'
|
|
|
|
test_done
|