(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'test log with i18n features'>)}
          spids: [4]
        )
      ]
    )
    (C {<.>} {<'./test-lib.sh'>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:utf8_e)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: (C {<printf>} {(SQ <'\\303\\251'>)})
              )
            }
          spids: [17]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:latin1_e)
          op: assign_op.Equal
          rhs: {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<printf>} {(SQ <'\\351'>)}))}
          spids: [26]
        )
      ]
    )
    (C {<test_expect_success>} {(SQ <'create commits in different encodings'>)} 
      {
        (SQ <'\n'> <'\ttest_tick &&\n'> <'\tcat >msg <<-EOF &&\n'> <'\tutf8\n'> <'\n'> 
          <'\tt${utf8_e}st\n'> <'\tEOF\n'> <'\tgit add msg &&\n'> <'\tgit -c i18n.commitencoding=utf8 commit -F msg &&\n'> 
          <'\tcat >msg <<-EOF &&\n'> <'\tlatin1\n'> <'\n'> <'\tt${latin1_e}st\n'> <'\tEOF\n'> <'\tgit add msg &&\n'> 
          <'\tgit -c i18n.commitencoding=ISO-8859-1 commit -F msg\n'>
        )
      }
    )
    (C {<test_expect_success>} {(SQ <'log --grep searches in log output encoding (utf8)'>)} 
      {
        (SQ <'\n'> <'\tcat >expect <<-\\EOF &&\n'> <'\tlatin1\n'> <'\tutf8\n'> <'\tEOF\n'> 
          <'\tgit log --encoding=utf8 --format=%s --grep=$utf8_e >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_expect_success>} {<Id.KW_Bang '!'> <MINGW>} 
      {(SQ <'log --grep searches in log output encoding (latin1)'>)} 
      {
        (SQ <'\n'> <'\tcat >expect <<-\\EOF &&\n'> <'\tlatin1\n'> <'\tutf8\n'> <'\tEOF\n'> 
          <'\tgit log --encoding=ISO-8859-1 --format=%s --grep=$latin1_e >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_expect_success>} {<Id.KW_Bang '!'> <MINGW>} 
      {(SQ <'log --grep does not find non-reencoded values (utf8)'>)} 
      {
        (SQ <'\n'> <'\t>expect &&\n'> 
          <'\tgit log --encoding=utf8 --format=%s --grep=$latin1_e >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_expect_success>} {(SQ <'log --grep does not find non-reencoded values (latin1)'>)} 
      {
        (SQ <'\n'> <'\t>expect &&\n'> 
          <'\tgit log --encoding=ISO-8859-1 --format=%s --grep=$utf8_e >actual &&\n'> <'\ttest_cmp expect actual\n'>
        )
      }
    )
    (C {<test_done>})
  ]
)