(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description) op: assign_op.Equal rhs: {(SQ <'Test revision walking api'>)} spids: [13] ) ] redirects: [] ) (C {<.>} {<'./test-lib.sh'>}) (command.Simple words: [{<cat>}] redirects: [ (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<run_twice_expected>}) (redir op: <Id.Redir_DLessDash '<<-'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {<EOF>} here_end_span_id: 39 stdin_parts: [ <'1st\n'> <' > add b\n'> <' > add a\n'> <'2nd\n'> <' > add b\n'> <' > add a\n'> ] ) ) ] more_env: [] do_fork: T ) (C {<test_expect_success>} {(SQ <setup>)} { (SQ <'\n'> <'\techo a > a &&\n'> <'\tgit add a &&\n'> <'\tgit commit -m "add a" &&\n'> <'\techo b > b &&\n'> <'\tgit add b &&\n'> <'\tgit commit -m "add b"\n'> ) } ) (C {<test_expect_success>} {(SQ <'revision walking can be done twice'>)} { (SQ <'\n'> <'\ttest-revision-walking run-twice >run_twice_actual &&\n'> <'\ttest_cmp run_twice_expected run_twice_actual\n'> ) } ) (C {<test_done>}) ] )