We have three sequential tests for for whether tracking refs
are updated by various fetches and pulls; the first two
should not update the ref, and the third should. Each test
depends on the state left by the test before.

This is fragile (a failing early test will confuse later
tests), and means we cannot add more "should update" tests
after the third one.

Let's instead save the initial state before these tests, and
then reset to a known state before running each test.

Signed-off-by: Jeff King <p...@peff.net>
---
 t/t5510-fetch.sh | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/t/t5510-fetch.sh b/t/t5510-fetch.sh
index d7a19a1..789c228 100755
--- a/t/t5510-fetch.sh
+++ b/t/t5510-fetch.sh
@@ -370,12 +370,20 @@ test_expect_success 'explicit fetch should not update 
tracking' '
 
 '
 
+test_expect_success 'mark initial state of origin/master' '
+       (
+               cd three &&
+               git tag base-origin-master refs/remotes/origin/master
+       )
+'
+
 test_expect_success 'explicit fetch should not update tracking' '
 
        cd "$D" &&
        git branch -f side &&
        (
                cd three &&
+               git update-ref refs/remotes/origin/master base-origin-master &&
                o=$(git rev-parse --verify refs/remotes/origin/master) &&
                git fetch origin master &&
                n=$(git rev-parse --verify refs/remotes/origin/master) &&
@@ -390,6 +398,7 @@ test_expect_success 'explicit pull should not update 
tracking' '
        git branch -f side &&
        (
                cd three &&
+               git update-ref refs/remotes/origin/master base-origin-master &&
                o=$(git rev-parse --verify refs/remotes/origin/master) &&
                git pull origin master &&
                n=$(git rev-parse --verify refs/remotes/origin/master) &&
@@ -404,6 +413,7 @@ test_expect_success 'configured fetch updates tracking' '
        git branch -f side &&
        (
                cd three &&
+               git update-ref refs/remotes/origin/master base-origin-master &&
                o=$(git rev-parse --verify refs/remotes/origin/master) &&
                git fetch origin &&
                n=$(git rev-parse --verify refs/remotes/origin/master) &&
-- 
1.8.3.rc1.2.g12db477

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to