(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: { (SQ <'git commit-tree options test\n'> <'\n'> <'This test checks that git commit-tree can create a specific commit\n'> <'object by defining all environment variables that it understands.\n'> <'\n'> <'Also make sure that command line parser understands the normal\n'> <'"flags first and then non flag arguments" command line.\n'> ) } spids: [13] ) ] spids: [13] ) (C {(.)} {(./test-lib.sh)}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(expected)} spids:[32]) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ('tree ') ($ VSub_Name '$EMPTY_TREE') ('\n') ('author Author Name <author@email> 1117148400 +0000\n') ('committer Committer Name <committer@email> 1117150200 +0000\n') ('\n') ('comment text\n') ) } do_expansion: True here_end: EOF was_filled: True spids: [35] ) ] ) (C {(test_expect_success)} {(SQ <'test preparation: write empty tree'>)} {(SQ <'git write-tree >treeid'>)} ) (C {(test_expect_success)} {(SQ <'construct commit'>)} { (SQ <'echo comment text |\n'> <' GIT_AUTHOR_NAME="Author Name" \\\n'> <' GIT_AUTHOR_EMAIL="author@email" \\\n'> <' GIT_AUTHOR_DATE="2005-05-26 23:00" \\\n'> <' GIT_COMMITTER_NAME="Committer Name" \\\n'> <' GIT_COMMITTER_EMAIL="committer@email" \\\n'> <' GIT_COMMITTER_DATE="2005-05-26 23:30" \\\n'> <' TZ=GMT git commit-tree $(cat treeid) >commitid 2>/dev/null'> ) } ) (C {(test_expect_success)} {(SQ <'read commit'>)} {(SQ <'git cat-file commit $(cat commitid) >commit'>)} ) (C {(test_expect_success)} {(SQ <'compare commit'>)} {(SQ <'test_cmp expected commit'>)}) (C {(test_expect_success)} {(SQ <'flags and then non flags'>)} { (SQ <'\n'> <'\ttest_tick &&\n'> <'\techo comment text |\n'> <'\tgit commit-tree $(cat treeid) >commitid &&\n'> <'\techo comment text |\n'> <'\tgit commit-tree $(cat treeid) -p $(cat commitid) >childid-1 &&\n'> <'\techo comment text |\n'> <'\tgit commit-tree -p $(cat commitid) $(cat treeid) >childid-2 &&\n'> <'\ttest_cmp childid-1 childid-2 &&\n'> <'\tgit commit-tree $(cat treeid) -m foo >childid-3 &&\n'> <'\tgit commit-tree -m foo $(cat treeid) >childid-4 &&\n'> <'\ttest_cmp childid-3 childid-4\n'> ) } ) (C {(test_done)}) ] )