3 test_description
='Test auto-repair of patch refs'
8 git show-ref |
(grep "refs/patches/master" || true
) > bad-refs.txt
&&
9 test_expect_code
1 test_cmp expected-refs.txt bad-refs.txt
&&
10 stg series
> series.txt
&&
11 git show-ref |
grep "refs/patches/master" > refs.txt
&&
12 test_cmp expected-series.txt series.txt
&&
13 test_cmp expected-refs.txt refs.txt
16 test_expect_success
'Initialize some patches' '
17 test_commit_bulk --message="p%s" --filename=a.txt 3 &&
20 git show-ref | grep "refs/patches/master" > expected-refs.txt &&
21 stg series > expected-series.txt
24 test_expect_success
'Deleted refs are restored' '
25 git update-ref -d refs/patches/master/p1 &&
26 git update-ref -d refs/patches/master/p2 &&
27 git update-ref -d refs/patches/master/p3 &&
31 test_expect_success
'Modified refs are restored' '
32 git update-ref refs/patches/master/p1 refs/patches/master/p2 &&
36 test_expect_success
'Extra refs are removed' '
37 git update-ref refs/patches/master/p98 HEAD &&
38 git update-ref refs/patches/master/p99 refs/patches/master/p1 &&
42 test_expect_failure
'Symbolic refs are made direct' '
43 git symbolic-ref refs/patches/master/p1 refs/patches/master/p2 &&