1#!/bin/sh 2# 3# Copyright (c) 2019 Denton Liu 4# 5 6test_description='Test submodules set-url subcommand 7 8This test verifies that the set-url subcommand of git-submodule is working 9as expected. 10' 11 12TEST_NO_CREATE_REPO=1 13. ./test-lib.sh 14 15test_expect_success 'submodule config cache setup' ' 16 mkdir submodule && 17 ( 18 cd submodule && 19 git init && 20 echo a >file && 21 git add file && 22 git commit -ma 23 ) && 24 mkdir super && 25 ( 26 cd super && 27 git init && 28 git submodule add ../submodule && 29 git commit -m "add submodule" 30 ) 31' 32 33test_expect_success 'test submodule set-url' ' 34 # add a commit and move the submodule (change the url) 35 ( 36 cd submodule && 37 echo b >>file && 38 git add file && 39 git commit -mb 40 ) && 41 mv submodule newsubmodule && 42 43 git -C newsubmodule show >expect && 44 ( 45 cd super && 46 test_must_fail git submodule update --remote && 47 git submodule set-url submodule ../newsubmodule && 48 grep -F "url = ../newsubmodule" .gitmodules && 49 git submodule update --remote 50 ) && 51 git -C super/submodule show >actual && 52 test_cmp expect actual 53' 54 55test_done 56