Re: [PATCH 08/29] t7400: fix broken "submodule add/reconfigure --force" test
From: Stefan Beller <hidden>
Date: 2018-06-27 18:05:12
On Tue, Jun 26, 2018 at 12:30 AM Eric Sunshine [off-list ref] wrote:
This test has been dysfunctional since it was added by 619acfc78c (submodule add: extend force flag to add existing repos, 2016-10-06), however, two problems early in the test went unnoticed due to a broken &&-chain later in the test. First, it tries configuring the submodule with repository "bogus-url", however, "git submodule add" insists that the repository be either an absolute URL or a relative pathname requiring prefix "./" or "../" (this is true even with --force), but "bogus-url" does not meet those criteria, thus the command fails. Second, it then tries configuring a submodule with a path which is .gitignore'd, which is disallowed. This restriction can be overridden with --force, but the test neglects to use that option. Fix both problems, as well as the broken &&-chain behind which they hid. Signed-off-by: Eric Sunshine <redacted>
This patch is Reviewed-by: Stefan Beller <redacted> Thanks for this whole series (I just read the cover letter) and I think detecting broken && chains is a valuable part in the test suite. Thanks, Stefan
quoted hunk ↗ jump to hunk
--- t/t7400-submodule-basic.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh index 812db137b8..401adaed32 100755 --- a/t/t7400-submodule-basic.sh +++ b/t/t7400-submodule-basic.sh@@ -171,12 +171,12 @@ test_expect_success 'submodule add to .gitignored path with --force' ' test_expect_success 'submodule add to reconfigure existing submodule with --force' ' ( cd addtest-ignore && - git submodule add --force bogus-url submod && - git submodule add -b initial "$submodurl" submod-branch && - test "bogus-url" = "$(git config -f .gitmodules submodule.submod.url)" && - test "bogus-url" = "$(git config submodule.submod.url)" && + git submodule add --force /bogus-url submod && + git submodule add --force -b initial "$submodurl" submod-branch && + test "/bogus-url" = "$(git config -f .gitmodules submodule.submod.url)" && + test "/bogus-url" = "$(git config submodule.submod.url)" && # Restore the url - git submodule add --force "$submodurl" submod + git submodule add --force "$submodurl" submod && test "$submodurl" = "$(git config -f .gitmodules submodule.submod.url)" && test "$submodurl" = "$(git config submodule.submod.url)" ) --2.18.0.419.gfe4b301394