(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:'checkout from unborn branch' span_id:6))}
          spids: [4]
        )
      ]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:setup span_id:17))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:21) 
          (Token id:Id.Lit_Chars val:'\tmkdir parent &&\n' span_id:22) (Token id:Id.Lit_Chars val:'\t(cd parent &&\n' span_id:23) 
          (Token id:Id.Lit_Chars val:'\t git init &&\n' span_id:24) (Token id:Id.Lit_Chars val:'\t echo content >file &&\n' span_id:25) 
          (Token id:Id.Lit_Chars val:'\t git add file &&\n' span_id:26) (Token id:Id.Lit_Chars val:'\t git commit -m base\n' span_id:27) 
          (Token id:Id.Lit_Chars val:'\t) &&\n' span_id:28) (Token id:Id.Lit_Chars val:'\tgit fetch parent master:origin\n' span_id:29)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'checkout from unborn preserves untracked files' span_id:36))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:40) 
          (Token id:Id.Lit_Chars val:'\techo precious >expect &&\n' span_id:41) (Token id:Id.Lit_Chars val:'\techo precious >file &&\n' span_id:42) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail git checkout -b new origin &&\n'
            span_id: 43
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect file\n' span_id:44)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'checkout from unborn preserves index contents' span_id:51))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:55) 
          (Token id:Id.Lit_Chars val:'\techo precious >expect &&\n' span_id:56) (Token id:Id.Lit_Chars val:'\techo precious >file &&\n' span_id:57) 
          (Token id:Id.Lit_Chars val:'\tgit add file &&\n' span_id:58) (Token id:Id.Lit_Chars val:'\ttest_must_fail git checkout -b new origin &&\n' span_id:59) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp expect file &&\n' span_id:60) (Token id:Id.Lit_Chars val:'\tgit show :file >file &&\n' span_id:61) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp expect file\n' span_id:62)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'checkout from unborn merges identical index contents'
            span_id: 69
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:73) 
          (Token id:Id.Lit_Chars val:'\techo content >file &&\n' span_id:74) (Token id:Id.Lit_Chars val:'\tgit add file &&\n' span_id:75) 
          (Token id:Id.Lit_Chars val:'\tgit checkout -b new origin\n' span_id:76)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'checking out another branch from unborn state' span_id:83))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:87) 
          (Token id:Id.Lit_Chars val:'\tgit checkout --orphan newroot &&\n' span_id:88) (Token id:Id.Lit_Chars val:'\tgit checkout -b anothername &&\n' span_id:89) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail git show-ref --verify refs/heads/newroot &&\n'
            span_id: 90
          ) (Token id:Id.Lit_Chars val:'\tgit symbolic-ref HEAD >actual &&\n' span_id:91) 
          (Token
            id: Id.Lit_Chars
            val: '\techo refs/heads/anothername >expect &&\n'
            span_id: 92
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:93)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'checking out in a newly created repo' span_id:100))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:104) 
          (Token id:Id.Lit_Chars val:'\ttest_create_repo empty &&\n' span_id:105) (Token id:Id.Lit_Chars val:'\t(\n' span_id:106) 
          (Token id:Id.Lit_Chars val:'\t\tcd empty &&\n' span_id:107) (Token id:Id.Lit_Chars val:'\t\tgit symbolic-ref HEAD >expect &&\n' span_id:108) 
          (Token id:Id.Lit_Chars val:'\t\ttest_must_fail git checkout &&\n' span_id:109) (Token id:Id.Lit_Chars val:'\t\tgit symbolic-ref HEAD >actual &&\n' span_id:110) 
          (Token id:Id.Lit_Chars val:'\t\ttest_cmp expect actual\n' span_id:111) (Token id:Id.Lit_Chars val:'\t)\n' span_id:112)
        )
      }
    )
    (C {(test_done)})
  ]
)