(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <'Test for "git log --decorate" colors'>)}
          spids: [13]
        )
      ]
      spids: [13]
    )
    (C {(.)} {(./test-lib.sh)})
    (FuncDef
      name: get_color
      body: 
        (BraceGroup
          children: [(C {(git)} {(config)} {(--get-color)} {(no.such.slot)} {(DQ ($ VSub_Number '$1'))})]
          spids: [29]
        )
      spids: [24 28]
    )
    (C {(test_expect_success)} {(setup)} 
      {
        (SQ <'\n'> <'\tgit config diff.color.commit yellow &&\n'> 
          <'\tgit config color.decorate.branch green &&\n'> <'\tgit config color.decorate.remoteBranch red &&\n'> 
          <'\tgit config color.decorate.tag "reverse bold yellow" &&\n'> <'\tgit config color.decorate.stash magenta &&\n'> <'\tgit config color.decorate.HEAD cyan &&\n'> 
          <'\n'> <'\tc_reset=$(get_color reset) &&\n'> <'\n'> <'\tc_commit=$(get_color yellow) &&\n'> 
          <'\tc_branch=$(get_color green) &&\n'> <'\tc_remoteBranch=$(get_color red) &&\n'> <'\tc_tag=$(get_color "reverse bold yellow") &&\n'> 
          <'\tc_stash=$(get_color magenta) &&\n'> <'\tc_HEAD=$(get_color cyan) &&\n'> <'\n'> <'\ttest_commit A &&\n'> <'\tgit clone . other &&\n'> 
          <'\t(\n'> <'\t\tcd other &&\n'> <'\t\ttest_commit A1\n'> <'\t) &&\n'> <'\n'> 
          <'\tgit remote add -f other ./other &&\n'> <'\ttest_commit B &&\n'> <'\tgit tag v1.0 &&\n'> <'\techo >>A.t &&\n'> 
          <'\tgit stash save Changes to A.t\n'>
        )
      }
    )
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (Redir op_id:Redir_Great fd:16777215 arg_word:{(expected)} spids:[86])
        (HereDoc
          op_id: Redir_DLess
          fd: 16777215
          body: 
            {
              (DQ (${ VSub_Name c_commit) (COMMIT_ID) (${ VSub_Name c_reset) (${ VSub_Name c_commit) 
                (' (') (${ VSub_Name c_reset) (${ VSub_Name c_HEAD) ('HEAD ->') (' ') (${ VSub_Name c_reset) 
                (${ VSub_Name c_branch) (master) (${ VSub_Name c_reset) (${ VSub_Name c_commit) (',') (' ') (${ VSub_Name c_reset) 
                (${ VSub_Name c_tag) ('tag: v1.0') (${ VSub_Name c_reset) (${ VSub_Name c_commit) (',') (' ') (${ VSub_Name c_reset) 
                (${ VSub_Name c_tag) ('tag: B') (${ VSub_Name c_reset) (${ VSub_Name c_commit) (')') (${ VSub_Name c_reset) (' B\n') 
                (${ VSub_Name c_commit) (COMMIT_ID) (${ VSub_Name c_reset) (${ VSub_Name c_commit) (' (') (${ VSub_Name c_reset) 
                (${ VSub_Name c_tag) ('tag: A1') (${ VSub_Name c_reset) (${ VSub_Name c_commit) (',') (' ') (${ VSub_Name c_reset) 
                (${ VSub_Name c_remoteBranch) (other/master) (${ VSub_Name c_reset) (${ VSub_Name c_commit) (')') (${ VSub_Name c_reset) (' A1\n') 
                (${ VSub_Name c_commit) (COMMIT_ID) (${ VSub_Name c_reset) (${ VSub_Name c_commit) (' (') (${ VSub_Name c_reset) 
                (${ VSub_Name c_stash) (refs/stash) (${ VSub_Name c_reset) (${ VSub_Name c_commit) (')') (${ VSub_Name c_reset) 
                (' On master: Changes to A.t\n') (${ VSub_Name c_commit) (COMMIT_ID) (${ VSub_Name c_reset) (${ VSub_Name c_commit) (' (') 
                (${ VSub_Name c_reset) (${ VSub_Name c_tag) ('tag: A') (${ VSub_Name c_reset) (${ VSub_Name c_commit) (')') 
                (${ VSub_Name c_reset) (' A\n')
              )
            }
          do_expansion: True
          here_end: EOF
          was_filled: True
          spids: [89]
        )
      ]
    )
    (C {(test_expect_success)} {(SQ <'Commit Decorations Colored Correctly'>)} 
      {
        (SQ <'\n'> 
          <'\tgit log --first-parent --abbrev=10 --all --decorate --oneline --color=always |\n'> <'\tsed "s/[0-9a-f]\\{10,10\\}/COMMIT_ID/" >out &&\n'> <'\ttest_cmp expected out\n'>
        )
      }
    )
    (C {(test_done)})
  ]
)