(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'git svn refuses to dcommit non-UTF8 messages'>)}
          spids: [10]
        )
      ]
    )
    (C {<.>} {<'./lib-git-svn.sh'>})
    (command.ForEach
      iter_names: [H]
      iterable: (for_iter.Words words:[{<ISO8859-1>} {<eucJP>}])
      body: 
        (command.DoGroup
          children: [
            (C {<test_expect_success>} {(DQ ($ Id.VSub_DollarName '$H') <' setup'>)} 
              {
                (SQ <'\n'> <'\t\tmkdir $H &&\n'> 
                  <'\t\tsvn_cmd import -m "$H test" $H "$svnrepo"/$H &&\n'> <'\t\tgit svn clone "$svnrepo"/$H $H\n'> <'\t'>
                )
              }
            )
          ]
        )
    )
    (command.ForEach
      iter_names: [H]
      iterable: (for_iter.Words words:[{<ISO8859-1>} {<eucJP>}])
      body: 
        (command.DoGroup
          children: [
            (C {<test_expect_success>} {(DQ ($ Id.VSub_DollarName '$H') <' commit on git side'>)} 
              {
                (SQ <'\n'> <'\t(\n'> <'\t\tcd $H &&\n'> <'\t\tgit config i18n.commitencoding $H &&\n'> 
                  <'\t\tgit checkout -b t refs/remotes/git-svn &&\n'> <'\t\techo $H >F &&\n'> <'\t\tgit add F &&\n'> 
                  <'\t\tgit commit -a -F "$TEST_DIRECTORY"/t3900/$H.txt &&\n'> <'\t\tE=$(git cat-file commit HEAD | sed -ne "s/^encoding //p") &&\n'> <'\t\ttest "z$E" = "z$H"\n'> 
                  <'\t)\n'> <'\t'>
                )
              }
            )
          ]
        )
    )
    (command.ForEach
      iter_names: [H]
      iterable: (for_iter.Words words:[{<ISO8859-1>} {<eucJP>}])
      body: 
        (command.DoGroup
          children: [
            (C {<test_expect_success>} {(DQ ($ Id.VSub_DollarName '$H') <' dcommit to svn'>)} 
              {
                (SQ <'\n'> <'\t(\n'> <'\t\tcd $H &&\n'> 
                  <'\t\tgit config --unset i18n.commitencoding &&\n'> <'\t\ttest_must_fail git svn dcommit\n'> <'\t)\n'> <'\t'>
                )
              }
            )
          ]
        )
    )
    (C {<test_done>})
  ]
)