(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'test unique sha1 abbreviation on "index from..to" line'>)}
          spids: [4]
        )
      ]
    )
    (C {<.>} {<'./test-lib.sh'>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect_initial>})
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<EOF>}
              here_end_span_id: 24
              stdin_parts: [<'100644 blob 51d2738463ea4ca66f8691c91e33ce64b7d41bb1\tfoo\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect_update>})
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<EOF>}
              here_end_span_id: 36
              stdin_parts: [<'100644 blob 51d2738efb4ad8a1e40bed839ab8e116f0a15e47\tfoo\n'>]
            )
        )
      ]
      do_fork: T
    )
    (C {<test_expect_success>} {(SQ <setup>)} 
      {
        (SQ <'\n'> <'\techo 4827 > foo &&\n'> <'\tgit add foo &&\n'> <'\tgit commit -m "initial" &&\n'> 
          <'\tgit cat-file -p HEAD: > actual &&\n'> <'\ttest_cmp expect_initial actual &&\n'> <'\techo 11742 > foo &&\n'> 
          <'\tgit commit -a -m "update" &&\n'> <'\tgit cat-file -p HEAD: > actual &&\n'> <'\ttest_cmp expect_update actual\n'>
        )
      }
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<expect>})
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<EOF>}
              here_end_span_id: 68
              stdin_parts: [<'index 51d27384..51d2738e 100644\n'>]
            )
        )
      ]
      do_fork: T
    )
    (C {<test_expect_success>} {(SQ <'diff does not produce ambiguous index line'>)} 
      {
        (SQ <'\n'> <'\tgit diff HEAD^..HEAD | grep index > actual &&\n'> <'\ttest_cmp expect actual\n'>)
      }
    )
    (C {<test_done>})
  ]
)