(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:'git checkout-index -u test.\n' span_id:15) 
                (Token id:Id.Lit_Chars val:'\n' span_id:16) 
                (Token
                  id: Id.Lit_Chars
                  val: 'With -u flag, git checkout-index internally runs the equivalent of\n'
                  span_id: 17
                ) (Token id:Id.Lit_Chars val:'git update-index --refresh on the checked out entry.' span_id:18)
              )
            }
          spids: [13]
        )
      ]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:preparation span_id:31))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:35) 
          (Token id:Id.Lit_Chars val:'echo frotz >path0 &&\n' span_id:36) (Token id:Id.Lit_Chars val:'git update-index --add path0 &&\n' span_id:37) 
          (Token id:Id.Lit_Chars val:'t=$(git write-tree)' span_id:38)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'without -u, git checkout-index smudges stat information.'
            span_id: 46
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:50) 
          (Token id:Id.Lit_Chars val:'rm -f path0 &&\n' span_id:51) (Token id:Id.Lit_Chars val:'git read-tree $t &&\n' span_id:52) 
          (Token id:Id.Lit_Chars val:'git checkout-index -f -a &&\n' span_id:53) (Token id:Id.Lit_Chars val:'test_must_fail git diff-files --exit-code' span_id:54)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'with -u, git checkout-index picks up stat information from new files.'
            span_id: 62
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:66) 
          (Token id:Id.Lit_Chars val:'rm -f path0 &&\n' span_id:67) (Token id:Id.Lit_Chars val:'git read-tree $t &&\n' span_id:68) 
          (Token id:Id.Lit_Chars val:'git checkout-index -u -f -a &&\n' span_id:69) (Token id:Id.Lit_Chars val:'git diff-files --exit-code' span_id:70)
        )
      }
    )
    (C {(test_done)})
  ]
)