#!/bin/sh global test_description := ''git pull message generation'' source ./test-lib.sh global dollar := ''$Dollar'' test_expect_success setup ' test_commit initial afile original && git clone . cloned && ( cd cloned && echo added >bfile && git add bfile && test_tick && git commit -m "add bfile" ) && test_tick && test_tick && echo "second" >afile && git add afile && git commit -m "second commit" && echo "original $dollar" >afile && git add afile && git commit -m "do not clobber $dollar signs" ' test_expect_success pull ' ( cd cloned && git pull --log && git log -2 && git cat-file commit HEAD >result && grep Dollar result ) ' test_expect_success '--log=1 limits shortlog length' ' ( cd cloned && git reset --hard HEAD^ && test "$(cat afile)" = original && test "$(cat bfile)" = added && git pull --log=1 && git log -3 && git cat-file commit HEAD >result && grep Dollar result && ! grep "second commit" result ) ' test_done (CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <"git pull message generation">)} spids: [4] ) ] spids: [4] ) (C {(.)} {(./test-lib.sh)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:dollar) op:Equal rhs:{(SQ <"$Dollar">)} spids:[15])] spids: [15] ) (C {(test_expect_success)} {(setup)} { (SQ <"\n"> <"\ttest_commit initial afile original &&\n"> <"\tgit clone . cloned &&\n"> <"\t(\n"> <"\t\tcd cloned &&\n"> <"\t\techo added >bfile &&\n"> <"\t\tgit add bfile &&\n"> <"\t\ttest_tick &&\n"> <"\t\tgit commit -m \"add bfile\"\n"> <"\t) &&\n"> <"\ttest_tick && test_tick &&\n"> <"\techo \"second\" >afile &&\n"> <"\tgit add afile &&\n"> <"\tgit commit -m \"second commit\" &&\n"> <"\techo \"original $dollar\" >afile &&\n"> <"\tgit add afile &&\n"> <"\tgit commit -m \"do not clobber $dollar signs\"\n"> ) } ) (C {(test_expect_success)} {(pull)} { (SQ <"\n"> <"(\n"> <"\tcd cloned &&\n"> <"\tgit pull --log &&\n"> <"\tgit log -2 &&\n"> <"\tgit cat-file commit HEAD >result &&\n"> <"\tgrep Dollar result\n"> <")\n"> ) } ) (C {(test_expect_success)} {(SQ <"--log=1 limits shortlog length">)} { (SQ <"\n"> <"(\n"> <"\tcd cloned &&\n"> <"\tgit reset --hard HEAD^ &&\n"> <"\ttest \"$(cat afile)\" = original &&\n"> <"\ttest \"$(cat bfile)\" = added &&\n"> <"\tgit pull --log=1 &&\n"> <"\tgit log -3 &&\n"> <"\tgit cat-file commit HEAD >result &&\n"> <"\tgrep Dollar result &&\n"> <"\t! grep \"second commit\" result\n"> <")\n"> ) } ) (C {(test_done)}) ] )