(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: {(SQ <'test unique sha1 abbreviation on "index from..to" line'>)} spids: [4] ) ] ) (C {<.>} {<'./test-lib.sh'>}) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect_initial>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 24 stdin_parts: [<'100644 blob 51d2738463ea4ca66f8691c91e33ce64b7d41bb1\tfoo\n'>] ) ) ] do_fork: T ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect_update>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 36 stdin_parts: [<'100644 blob 51d2738efb4ad8a1e40bed839ab8e116f0a15e47\tfoo\n'>] ) ) ] do_fork: T ) (C {<test_expect_success>} {(SQ <setup>)} { (SQ <'\n'> <'\techo 4827 > foo &&\n'> <'\tgit add foo &&\n'> <'\tgit commit -m "initial" &&\n'> <'\tgit cat-file -p HEAD: > actual &&\n'> <'\ttest_cmp expect_initial actual &&\n'> <'\techo 11742 > foo &&\n'> <'\tgit commit -a -m "update" &&\n'> <'\tgit cat-file -p HEAD: > actual &&\n'> <'\ttest_cmp expect_update actual\n'> ) } ) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect>}) (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 68 stdin_parts: [<'index 51d27384..51d2738e 100644\n'>] ) ) ] do_fork: T ) (C {<test_expect_success>} {(SQ <'diff does not produce ambiguous index line'>)} { (SQ <'\n'> <'\tgit diff HEAD^..HEAD | grep index > actual &&\n'> <'\ttest_cmp expect actual\n'>) } ) (C {<test_done>}) ] )