(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: { (SQ <"git cherry should detect patches integrated upstream\n"> <"\n"> <"This test cherry-picks one local change of two into master branch, and\n"> <"checks that git cherry only returns the second patch in the local branch\n"> ) } spids: [13] ) ] spids: [13] ) (C {(.)} {(./test-lib.sh)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:GIT_AUTHOR_EMAIL) op: Equal rhs: {(bogus_email_address)} spids: [26] ) ] spids: [26] ) (C {(export)} {(GIT_AUTHOR_EMAIL)}) (C {(test_expect_success)} { (SQ <"prepare repository with topic branch, and check cherry finds the 2 patches from there">) } { (SQ <"echo First > A &&\n"> <" git update-index --add A &&\n"> <" test_tick &&\n"> <" git commit -m \"Add A.\" &&\n"> <"\n"> <" git checkout -b my-topic-branch &&\n"> <"\n"> <" echo Second > B &&\n"> <" git update-index --add B &&\n"> <" test_tick &&\n"> <" git commit -m \"Add B.\" &&\n"> <"\n"> <" echo AnotherSecond > C &&\n"> <" git update-index --add C &&\n"> <" test_tick &&\n"> <" git commit -m \"Add C.\" &&\n"> <"\n"> <" git checkout -f master &&\n"> <" rm -f B C &&\n"> <"\n"> <" echo Third >> A &&\n"> <" git update-index A &&\n"> <" test_tick &&\n"> <" git commit -m \"Modify A.\" &&\n"> <"\n"> <" expr \"$(echo $(git cherry master my-topic-branch) )\" : \"+ [^ ]* + .*\"\n"> ) } ) (C {(test_expect_success)} {(SQ <"check that cherry with limit returns only the top patch">)} { (SQ < "expr \"$(echo $(git cherry master my-topic-branch my-topic-branch^1) )\" : \"+ [^ ]*\"\n" > ) } ) (C {(test_expect_success)} { (SQ <"cherry-pick one of the 2 patches, and check cherry recognized one and only one as new">) } { (SQ <"git cherry-pick my-topic-branch^0 &&\n"> <" echo $(git cherry master my-topic-branch) &&\n"> <" expr \"$(echo $(git cherry master my-topic-branch) )\" : \"+ [^ ]* - .*\"\n"> ) } ) (C {(test_done)}) ] )