(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <"Move a binary file">)}
          spids: [13]
        )
      ]
      spids: [13]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(SQ <"prepare repository">)} 
      {
        (SQ <"\n"> <"\tgit init &&\n"> <"\techo foo > foo &&\n"> 
          <"\techo \"barQ\" | q_to_nul > bar &&\n"> <"\tgit add . &&\n"> <"\tgit commit -m \"Initial commit\"\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"move the files into a \"sub\" directory">)} 
      {
        (SQ <"\n"> <"\tmkdir sub &&\n"> <"\tgit mv bar foo sub/ &&\n"> 
          <"\tgit commit -m \"Moved to sub/\"\n">
        )
      }
    )
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (Redir op_id:Redir_Great fd:-1 arg_word:{(expected)} spids:[57])
        (HereDoc
          op_id: Redir_DLess
          fd: -1
          body: 
            {("-\t-\tbar => sub/bar\n") ("0\t0\tfoo => sub/foo\n") ("\n") 
              ("diff --git a/bar b/sub/bar\n") ("similarity index 100%\n") ("rename from bar\n") ("rename to sub/bar\n") 
              ("diff --git a/foo b/sub/foo\n") ("similarity index 100%\n") ("rename from foo\n") ("rename to sub/foo\n")
            }
          do_expansion: False
          here_end: EOF
          was_filled: True
          spids: [61]
        )
      ]
    )
    (C {(test_expect_success)} {(SQ <"git show -C -C report renames">)} 
      {
        (SQ <"\n"> <"\tgit show -C -C --raw --binary --numstat >patch-with-stat &&\n"> 
          <"\ttail -n 11 patch-with-stat >current &&\n"> <"\ttest_cmp expected current\n">
        )
      }
    )
    (C {(test_done)})
  ]
)