(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: { (SQ (Token id:Id.Lit_Chars val:'git apply handling copy/rename patch.\n' span_id:15) (Token id:Id.Lit_Chars val:'\n' span_id:16) ) } spids: [13] ) ] ) (C {(.)} {(./test-lib.sh)}) (command.Simple words: [{(cat)}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:30) fd: -1 arg_word: {(test-patch)} ) (redir.HereDoc op: (Token id:Id.Redir_DLess val:'<<' span_id:33) fd: -1 here_begin: {(word_part.EscapedLiteral token:(Token id:Id.Lit_EscapedChar val:'\\E' span_id:34)) (OF)} here_end_span_id: 46 stdin_parts: [ ('diff --git a/foo b/bar\n') ('similarity index 47%\n') ('rename from foo\n') ('rename to bar\n') ('--- a/foo\n') ('+++ b/bar\n') ('@@ -1 +1 @@\n') ('-This is foo\n') ('+This is bar\n') ] ) ] ) (command.Simple words: [{(echo)} {(SQ (Token id:Id.Lit_Chars val:'This is foo' span_id:51))}] redirects: [(redir.Redir op:(Token id:Id.Redir_Great val:'>' span_id:54) fd:-1 arg_word:{(foo)})] ) (C {(chmod)} {(Id.Lit_Other '+') (x)} {(foo)}) (C {(test_expect_success)} {(setup)} {(SQ (Token id:Id.Lit_Chars val:'git update-index --add foo' span_id:72))} ) (C {(test_expect_success)} {(apply)} { (SQ (Token id: Id.Lit_Chars val: 'git apply --index --stat --summary --apply test-patch' span_id: 83 ) ) } ) (C {(test_expect_success)} {(FILEMODE)} {(validate)} {(SQ (Token id:Id.Lit_Chars val:'test -f bar && ls -l bar | grep "^-..x......"' span_id:96))} ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'apply reverse' span_id:103))} { (SQ (Token id: Id.Lit_Chars val: 'git apply -R --index --stat --summary --apply test-patch &&\n' span_id: 109 ) (Token id:Id.Lit_Chars val:' test "$(cat foo)" = "This is foo"' span_id:110) ) } ) (command.Simple words: [{(cat)}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:116) fd: -1 arg_word: {(test-patch)} ) (redir.HereDoc op: (Token id:Id.Redir_DLess val:'<<' span_id:119) fd: -1 here_begin: {(word_part.EscapedLiteral token:(Token id:Id.Lit_EscapedChar val:'\\E' span_id:120)) (OF) } here_end_span_id: 132 stdin_parts: [ ('diff --git a/foo b/bar\n') ('similarity index 47%\n') ('copy from foo\n') ('copy to bar\n') ('--- a/foo\n') ('+++ b/bar\n') ('@@ -1 +1 @@\n') ('-This is foo\n') ('+This is bar\n') ] ) ] ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'apply copy' span_id:137))} { (SQ (Token id: Id.Lit_Chars val: 'git apply --index --stat --summary --apply test-patch &&\n' span_id: 143 ) (Token id: Id.Lit_Chars val: ' test "$(cat bar)" = "This is bar" && test "$(cat foo)" = "This is foo"' span_id: 144 ) ) } ) (C {(test_done)}) ] )