blob: 6e92de38ab7532b4ad3f75b9a59acdcabbd3e2bb [file] [log] [blame]
#!/bin/sh
test_description='Test the pick command'
. ./test-lib.sh
test_expect_success \
'Initialize the StGIT repository' \
'
stg init &&
stg new A -m "a" && echo A > a && git add a && stg refresh &&
stg new B -m "b" && echo B > b && git add b && stg refresh &&
stg branch --clone foo &&
stg new C -m "c" && echo C > c && git add c && stg refresh &&
stg new D-foo -m "d" && echo D > d && git add d && stg refresh &&
stg branch master
'
test_expect_success \
'Pick remote patch' \
'
stg pick foo:C &&
test "$(echo $(stg series --applied --noprefix))" = "A B C"
'
test_expect_success \
'Pick --unapplied remote patch' \
'
stg pick --unapplied --ref-branch foo --name D D-foo &&
test "$(echo $(stg series --applied --noprefix))" = "A B C" &&
test "$(echo $(stg series --unapplied --noprefix))" = "D"
'
test_expect_success \
'Pick local unapplied patch' \
'
stg pick D &&
test "$(echo $(stg series --applied --noprefix))" = "A B C D-0" &&
test "$(echo $(stg series --unapplied --noprefix))" = "D"
'
test_expect_success \
'Pick --fold --revert local patch' \
'
stg pick --fold --revert D &&
stg refresh && stg clean &&
test "$(echo $(stg series --applied --noprefix))" = "A B C" &&
test "$(echo $(stg series --unapplied --noprefix))" = "D"
'
test_expect_success \
'Pick --fold without applied patches' \
'
stg pop --all &&
stg pick --fold D &&
test "$(echo $(stg series --unapplied --noprefix))" = "A B C D" &&
test "$(echo $(stg status))" = "A d"
'
test_done