From 1524ccdc1873029e4eafa5bffae2aa66d02369d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=86var=20Arnfj=C3=B6r=C3=B0=20Bjarmason?= Date: Wed, 26 Apr 2017 23:12:34 +0000 Subject: tests: rename a test having to do with shallow submodules MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rename the t5614-clone-submodules.sh test to t5614-clone-submodules-shallow.sh. It's not a general test of submodules, but of shallow cloning in relation to submodules. Move it to create another similar t56*-clone-submodules-*.sh test. Signed-off-by: Ævar Arnfjörð Bjarmason Signed-off-by: Junio C Hamano diff --git a/t/t5614-clone-submodules-shallow.sh b/t/t5614-clone-submodules-shallow.sh new file mode 100755 index 0000000..a87d329 --- /dev/null +++ b/t/t5614-clone-submodules-shallow.sh @@ -0,0 +1,122 @@ +#!/bin/sh + +test_description='Test shallow cloning of repos with submodules' + +. ./test-lib.sh + +pwd=$(pwd) + +test_expect_success 'setup' ' + git checkout -b master && + test_commit commit1 && + test_commit commit2 && + mkdir sub && + ( + cd sub && + git init && + test_commit subcommit1 && + test_commit subcommit2 && + test_commit subcommit3 + ) && + git submodule add "file://$pwd/sub" sub && + git commit -m "add submodule" +' + +test_expect_success 'nonshallow clone implies nonshallow submodule' ' + test_when_finished "rm -rf super_clone" && + git clone --recurse-submodules "file://$pwd/." super_clone && + git -C super_clone log --oneline >lines && + test_line_count = 3 lines && + git -C super_clone/sub log --oneline >lines && + test_line_count = 3 lines +' + +test_expect_success 'shallow clone with shallow submodule' ' + test_when_finished "rm -rf super_clone" && + git clone --recurse-submodules --depth 2 --shallow-submodules "file://$pwd/." super_clone && + git -C super_clone log --oneline >lines && + test_line_count = 2 lines && + git -C super_clone/sub log --oneline >lines && + test_line_count = 1 lines +' + +test_expect_success 'shallow clone does not imply shallow submodule' ' + test_when_finished "rm -rf super_clone" && + git clone --recurse-submodules --depth 2 "file://$pwd/." super_clone && + git -C super_clone log --oneline >lines && + test_line_count = 2 lines && + git -C super_clone/sub log --oneline >lines && + test_line_count = 3 lines +' + +test_expect_success 'shallow clone with non shallow submodule' ' + test_when_finished "rm -rf super_clone" && + git clone --recurse-submodules --depth 2 --no-shallow-submodules "file://$pwd/." super_clone && + git -C super_clone log --oneline >lines && + test_line_count = 2 lines && + git -C super_clone/sub log --oneline >lines && + test_line_count = 3 lines +' + +test_expect_success 'non shallow clone with shallow submodule' ' + test_when_finished "rm -rf super_clone" && + git clone --recurse-submodules --no-local --shallow-submodules "file://$pwd/." super_clone && + git -C super_clone log --oneline >lines && + test_line_count = 3 lines && + git -C super_clone/sub log --oneline >lines && + test_line_count = 1 lines +' + +test_expect_success 'clone follows shallow recommendation' ' + test_when_finished "rm -rf super_clone" && + git config -f .gitmodules submodule.sub.shallow true && + git add .gitmodules && + git commit -m "recommed shallow for sub" && + git clone --recurse-submodules --no-local "file://$pwd/." super_clone && + ( + cd super_clone && + git log --oneline >lines && + test_line_count = 4 lines + ) && + ( + cd super_clone/sub && + git log --oneline >lines && + test_line_count = 1 lines + ) +' + +test_expect_success 'get unshallow recommended shallow submodule' ' + test_when_finished "rm -rf super_clone" && + git clone --no-local "file://$pwd/." super_clone && + ( + cd super_clone && + git submodule update --init --no-recommend-shallow && + git log --oneline >lines && + test_line_count = 4 lines + ) && + ( + cd super_clone/sub && + git log --oneline >lines && + test_line_count = 3 lines + ) +' + +test_expect_success 'clone follows non shallow recommendation' ' + test_when_finished "rm -rf super_clone" && + git config -f .gitmodules submodule.sub.shallow false && + git add .gitmodules && + git commit -m "recommed non shallow for sub" && + git clone --recurse-submodules --no-local "file://$pwd/." super_clone && + ( + cd super_clone && + git log --oneline >lines && + test_line_count = 5 lines + ) && + ( + cd super_clone/sub && + git log --oneline >lines && + test_line_count = 3 lines + ) +' + +test_done diff --git a/t/t5614-clone-submodules.sh b/t/t5614-clone-submodules.sh deleted file mode 100755 index a87d329..0000000 --- a/t/t5614-clone-submodules.sh +++ /dev/null @@ -1,122 +0,0 @@ -#!/bin/sh - -test_description='Test shallow cloning of repos with submodules' - -. ./test-lib.sh - -pwd=$(pwd) - -test_expect_success 'setup' ' - git checkout -b master && - test_commit commit1 && - test_commit commit2 && - mkdir sub && - ( - cd sub && - git init && - test_commit subcommit1 && - test_commit subcommit2 && - test_commit subcommit3 - ) && - git submodule add "file://$pwd/sub" sub && - git commit -m "add submodule" -' - -test_expect_success 'nonshallow clone implies nonshallow submodule' ' - test_when_finished "rm -rf super_clone" && - git clone --recurse-submodules "file://$pwd/." super_clone && - git -C super_clone log --oneline >lines && - test_line_count = 3 lines && - git -C super_clone/sub log --oneline >lines && - test_line_count = 3 lines -' - -test_expect_success 'shallow clone with shallow submodule' ' - test_when_finished "rm -rf super_clone" && - git clone --recurse-submodules --depth 2 --shallow-submodules "file://$pwd/." super_clone && - git -C super_clone log --oneline >lines && - test_line_count = 2 lines && - git -C super_clone/sub log --oneline >lines && - test_line_count = 1 lines -' - -test_expect_success 'shallow clone does not imply shallow submodule' ' - test_when_finished "rm -rf super_clone" && - git clone --recurse-submodules --depth 2 "file://$pwd/." super_clone && - git -C super_clone log --oneline >lines && - test_line_count = 2 lines && - git -C super_clone/sub log --oneline >lines && - test_line_count = 3 lines -' - -test_expect_success 'shallow clone with non shallow submodule' ' - test_when_finished "rm -rf super_clone" && - git clone --recurse-submodules --depth 2 --no-shallow-submodules "file://$pwd/." super_clone && - git -C super_clone log --oneline >lines && - test_line_count = 2 lines && - git -C super_clone/sub log --oneline >lines && - test_line_count = 3 lines -' - -test_expect_success 'non shallow clone with shallow submodule' ' - test_when_finished "rm -rf super_clone" && - git clone --recurse-submodules --no-local --shallow-submodules "file://$pwd/." super_clone && - git -C super_clone log --oneline >lines && - test_line_count = 3 lines && - git -C super_clone/sub log --oneline >lines && - test_line_count = 1 lines -' - -test_expect_success 'clone follows shallow recommendation' ' - test_when_finished "rm -rf super_clone" && - git config -f .gitmodules submodule.sub.shallow true && - git add .gitmodules && - git commit -m "recommed shallow for sub" && - git clone --recurse-submodules --no-local "file://$pwd/." super_clone && - ( - cd super_clone && - git log --oneline >lines && - test_line_count = 4 lines - ) && - ( - cd super_clone/sub && - git log --oneline >lines && - test_line_count = 1 lines - ) -' - -test_expect_success 'get unshallow recommended shallow submodule' ' - test_when_finished "rm -rf super_clone" && - git clone --no-local "file://$pwd/." super_clone && - ( - cd super_clone && - git submodule update --init --no-recommend-shallow && - git log --oneline >lines && - test_line_count = 4 lines - ) && - ( - cd super_clone/sub && - git log --oneline >lines && - test_line_count = 3 lines - ) -' - -test_expect_success 'clone follows non shallow recommendation' ' - test_when_finished "rm -rf super_clone" && - git config -f .gitmodules submodule.sub.shallow false && - git add .gitmodules && - git commit -m "recommed non shallow for sub" && - git clone --recurse-submodules --no-local "file://$pwd/." super_clone && - ( - cd super_clone && - git log --oneline >lines && - test_line_count = 5 lines - ) && - ( - cd super_clone/sub && - git log --oneline >lines && - test_line_count = 3 lines - ) -' - -test_done -- cgit v0.10.2-6-g49f6