(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'git apply for contextually independent diffs'>)}
          spids: [4]
        )
      ]
    )
    (C {<.>} {<'./test-lib.sh'>})
    (command.Simple
      words: [{<echo>} {(SQ <'1\n'> <'2\n'> <'3\n'> <'4\n'> <'5\n'> <'6\n'> <'7\n'> <8>)}]
      redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<file>})]
      do_fork: T
    )
    (C {<test_expect_success>} {(SQ <setup>)} 
      {
        (SQ <'git add file &&\n'> <'\tgit commit -q -m 1 &&\n'> <'\tgit checkout -b test &&\n'> 
          <'\tmv file file.tmp &&\n'> <'\techo 0 >file &&\n'> <'\tcat file.tmp >>file &&\n'> <'\trm file.tmp &&\n'> 
          <'\tgit commit -a -q -m 2 &&\n'> <'\techo 9 >>file &&\n'> <'\tgit commit -a -q -m 3 &&\n'> <'\tgit checkout master'>
        )
      }
    )
    (C {<test_expect_success>} 
      {(SQ <'check if contextually independent diffs for the same file apply'>)} {(SQ <'( git diff test~2 test~1; git diff test~1 test~0 )| git apply'>)}
    )
    (C {<test_done>})
  ]
)