(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:'Test am with auto.crlf' span_id:6))}
          spids: [4]
        )
      ]
    )
    (C {(.)} {(./test-lib.sh)})
    (command.Simple
      words: [{(cat)}]
      redirects: [
        (redir.Redir
          op: (Token id:Id.Redir_Great val:'>' span_id:17)
          fd: -1
          arg_word: {(patchfile)}
        )
        (redir.HereDoc
          op: (Token id:Id.Redir_DLess val:'<<' span_id:20)
          fd: -1
          here_begin: 
            {(word_part.EscapedLiteral token:(Token id:Id.Lit_EscapedChar val:'\\E' span_id:21)) (OF)}
          here_end_span_id: 41
          stdin_parts: [
            ('From 38be10072e45dd6b08ce40851e3fca60a31a340b Mon Sep 17 00:00:00 2001\n')
            ('From: Marius Storm-Olsen <x@y.com>\n')
            ('Date: Thu, 23 Aug 2007 13:00:00 +0200\n')
            ('Subject: test1\n')
            ('\n')
            ('---\n')
            (' foo | 1 +\n')
            (' 1 files changed, 1 insertions(+), 0 deletions(-)\n')
            (' create mode 100644 foo\n')
            ('\n')
            ('diff --git a/foo b/foo\n')
            ('new file mode 100644\n')
            (
'index 0000000000000000000000000000000000000000..5716ca5987cbf97d6bb54920bea6adde242d87e6\n'
            )
            ('--- /dev/null\n')
            ('+++ b/foo\n')
            ('@@ -0,0 +1 @@\n')
            ('+bar\n')
          ]
        )
      ]
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:setup span_id:46))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:50) (Token id:Id.Lit_Chars val:'\n' span_id:51) 
          (Token id:Id.Lit_Chars val:'\tgit config core.autocrlf true &&\n' span_id:52) (Token id:Id.Lit_Chars val:'\techo foo >bar &&\n' span_id:53) 
          (Token id:Id.Lit_Chars val:'\tgit add bar &&\n' span_id:54) (Token id:Id.Lit_Chars val:'\ttest_tick &&\n' span_id:55) 
          (Token id:Id.Lit_Chars val:'\tgit commit -m initial\n' span_id:56) (Token id:Id.Lit_Chars val:'\n' span_id:57)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:am span_id:64))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:68) (Token id:Id.Lit_Chars val:'\n' span_id:69) 
          (Token id:Id.Lit_Chars val:'\tgit am -3 <patchfile &&\n' span_id:70) (Token id:Id.Lit_Chars val:'\tgit diff-files --name-status --exit-code\n' span_id:71) 
          (Token id:Id.Lit_Chars val:'\n' span_id:72)
        )
      }
    )
    (C {(test_done)})
  ]
)