(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <'git apply handling copy/rename patch.\n'> <'\n'>)} spids: [13] ) ] spids: [13] ) (C {(.)} {(./test-lib.sh)}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(test-patch)} spids:[30]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('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') } do_expansion: False here_end: EOF was_filled: T spids: [33] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <'This is foo'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(foo)} spids:[44])] ) (C {(chmod)} {(Lit_Other '+') (x)} {(foo)}) (C {(test_expect_success)} {(setup)} {(SQ <'git update-index --add foo'>)}) (C {(test_expect_success)} {(apply)} {(SQ <'git apply --index --stat --summary --apply test-patch'>)}) (C {(test_expect_success)} {(FILEMODE)} {(validate)} {(SQ <'test -f bar && ls -l bar | grep "^-..x......"'>)} ) (C {(test_expect_success)} {(SQ <'apply reverse'>)} { (SQ <'git apply -R --index --stat --summary --apply test-patch &&\n'> <' test "$(cat foo)" = "This is foo"'> ) } ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(test-patch)} spids:[106]) (HereDoc op_id: Redir_DLess fd: 16777215 body: {('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') } do_expansion: False here_end: EOF was_filled: T spids: [109] ) ] ) (C {(test_expect_success)} {(SQ <'apply copy'>)} { (SQ <'git apply --index --stat --summary --apply test-patch &&\n'> <' test "$(cat bar)" = "This is bar" && test "$(cat foo)" = "This is foo"'> ) } ) (C {(test_done)}) ] )