X-Git-Url: https://git.distorted.org.uk/~mdw/stgit/blobdiff_plain/89f647446f996f7846cbc56526451bf61a1a940c..9ab06b9858bbb0196867506724a8d74c8f39e113:/t/t2000-sync.sh diff --git a/t/t2000-sync.sh b/t/t2000-sync.sh index 02345bb..d550538 100755 --- a/t/t2000-sync.sh +++ b/t/t2000-sync.sh @@ -18,43 +18,48 @@ test_expect_success \ ' stg new p1 -m p1 && echo foo1 > foo1.txt && - stg add foo1.txt && + git add foo1.txt && stg refresh && stg new p2 -m p2 && echo foo2 > foo2.txt && - stg add foo2.txt && + git add foo2.txt && stg refresh && stg new p3 -m p3 && echo foo3 > foo3.txt && - stg add foo3.txt && + git add foo3.txt && stg refresh && stg export && - stg pop + stg pop && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "p3" ] ' test_expect_success \ 'Create a branch with empty patches' \ ' - stg branch -c foo base && + stg branch -c foo {base} && stg new p1 -m p1 && stg new p2 -m p2 && - stg new p3 -m p3 - test $(stg applied -c) -eq 3 + stg new p3 -m p3 && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] ' test_expect_success \ 'Synchronise second patch with the master branch' \ ' - stg sync -b master p2 && - test $(stg applied -c) -eq 3 && + stg sync -B master p2 && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] && test $(cat foo2.txt) = "foo2" ' test_expect_success \ 'Synchronise the first two patches with the master branch' \ ' - stg sync -b master -a && - test $(stg applied -c) -eq 3 && + stg sync -B master -a && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] && test $(cat foo1.txt) = "foo1" && test $(cat foo2.txt) = "foo2" ' @@ -63,7 +68,8 @@ test_expect_success \ 'Synchronise all the patches with the exported series' \ ' stg sync -s patches-master/series -a && - test $(stg applied -c) -eq 3 && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] && test $(cat foo1.txt) = "foo1" && test $(cat foo2.txt) = "foo2" && test $(cat foo3.txt) = "foo3" @@ -73,16 +79,20 @@ test_expect_success \ 'Modify the master patches' \ ' stg branch master && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "p3" ] && stg goto p1 && echo bar1 >> foo1.txt && stg refresh && stg goto p2 && echo bar2 > bar2.txt && - stg add bar2.txt && + git add bar2.txt && stg refresh && stg goto p3 && echo bar3 >> foo3.txt && stg refresh && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] && stg export && stg branch foo ' @@ -90,38 +100,45 @@ test_expect_success \ test_expect_success \ 'Synchronise second patch with the master branch' \ ' - stg sync -b master p2 && - test $(stg applied -c) -eq 3 && + stg sync -B master p2 && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] && test $(cat bar2.txt) = "bar2" ' -test_expect_failure \ +test_expect_success \ 'Synchronise the first two patches with the master branch (to fail)' \ ' - stg sync -b master -a + conflict_old stg sync -B master -a ' test_expect_success \ 'Restore the stack status after the failed sync' \ ' - test $(stg applied -c) -eq 1 && - stg resolved -a && + [ "$(echo $(stg series --applied --noprefix))" = "p1" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "p2 p3" ] && + git add --update && stg refresh && stg goto p3 + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] ' -test_expect_failure \ +test_expect_success \ 'Synchronise the third patch with the exported series (to fail)' \ ' - stg sync -s patches-master/series p3 + conflict_old stg sync -s patches-master/series p3 ' test_expect_success \ 'Restore the stack status after the failed sync' \ ' - test $(stg applied -c) -eq 3 && - stg resolved -a && - stg refresh + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] && + git add --update && + stg refresh && + [ "$(echo $(stg series --applied --noprefix))" = "p1 p2 p3" ] && + [ "$(echo $(stg series --unapplied --noprefix))" = "" ] ' test_done