(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <'grep icase on non-English locales'>)}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./lib-gettext.sh)})
    (C {(test_expect_success)} {(GETTEXT_LOCALE)} {(SQ <setup>)} 
      {
        (SQ <'\n'> <'\ttest_write_lines "TILRAUN: Hall\xc3\xb3 Heimur!" >file &&\n'> 
          <'\tgit add file &&\n'> <'\tLC_ALL="$is_IS_locale" &&\n'> <'\texport LC_ALL\n'>
        )
      }
    )
    (AndOr
      children: [
        (C {(test_have_prereq)} {(GETTEXT_LOCALE)})
        (AndOr
          children: [
            (C {(test-regex)} {(DQ ('HALL\xc3\x93'))} {(DQ ('Hall\xc3\xb3'))} {(ICASE)})
            (C {(test_set_prereq)} {(REGEX_LOCALE)})
          ]
          op_id: Op_DAmp
        )
      ]
      op_id: Op_DAmp
    )
    (C {(test_expect_success)} {(REGEX_LOCALE)} {(SQ <'grep literal string, no -F'>)} 
      {
        (SQ <'\n'> <'\tgit grep -i "TILRAUN: Hall\xc3\xb3 Heimur!" &&\n'> 
          <'\tgit grep -i "TILRAUN: HALL\xc3\x93 HEIMUR!"\n'>
        )
      }
    )
    (C {(test_expect_success)} {(GETTEXT_LOCALE) (Lit_Comma ',') (LIBPCRE)} 
      {(SQ <'grep pcre utf-8 icase'>)} 
      {
        (SQ <'\n'> <'\tgit grep --perl-regexp    "TILRAUN: H.ll\xc3\xb3 Heimur!" &&\n'> 
          <'\tgit grep --perl-regexp -i "TILRAUN: H.ll\xc3\xb3 Heimur!" &&\n'> <'\tgit grep --perl-regexp -i "TILRAUN: H.LL\xc3\x93 HEIMUR!"\n'>
        )
      }
    )
    (C {(test_expect_success)} {(GETTEXT_LOCALE) (Lit_Comma ',') (LIBPCRE)} 
      {(SQ <'grep pcre utf-8 string with "+"'>)} 
      {
        (SQ <'\n'> <'\ttest_write_lines "TILRAUN: Hall\xc3\xb3\xc3\xb3 Heimur!" >file2 &&\n'> 
          <'\tgit add file2 &&\n'> <'\tgit grep -l --perl-regexp "TILRAUN: H.ll\xc3\xb3+ Heimur!" >actual &&\n'> 
          <'\techo file >expected &&\n'> <'\techo file2 >>expected &&\n'> <'\ttest_cmp expected actual\n'>
        )
      }
    )
    (C {(test_expect_success)} {(REGEX_LOCALE)} {(SQ <'grep literal string, with -F'>)} 
      {
        (SQ <'\n'> <'\tgit grep --debug -i -F "TILRAUN: Hall\xc3\xb3 Heimur!"  2>&1 >/dev/null |\n'> 
          <'\t\t grep fixed >debug1 &&\n'> <'\ttest_write_lines "fixed TILRAUN: Hall\xc3\xb3 Heimur!" >expect1 &&\n'> 
          <'\ttest_cmp expect1 debug1 &&\n'> <'\n'> <'\tgit grep --debug -i -F "TILRAUN: HALL\xc3\x93 HEIMUR!"  2>&1 >/dev/null |\n'> 
          <'\t\t grep fixed >debug2 &&\n'> <'\ttest_write_lines "fixed TILRAUN: HALL\xc3\x93 HEIMUR!" >expect2 &&\n'> 
          <'\ttest_cmp expect2 debug2\n'>
        )
      }
    )
    (C {(test_expect_success)} {(REGEX_LOCALE)} {(SQ <'grep string with regex, with -F'>)} 
      {
        (SQ <'\n'> <'\ttest_write_lines "^*TILR^AUN:.* \\\\Hall\xc3\xb3 \\$He[]imur!\\$" >file &&\n'> 
          <'\n'> <'\tgit grep --debug -i -F "^*TILR^AUN:.* \\\\Hall\xc3\xb3 \\$He[]imur!\\$" 2>&1 >/dev/null |\n'> 
          <'\t\t grep fixed >debug1 &&\n'> 
          <
'\ttest_write_lines "fixed \\\\^*TILR^AUN:\\\\.\\\\* \\\\\\\\Hall\xc3\xb3 \\$He\\\\[]imur!\\\\\\$" >expect1 &&\n'
          > <'\ttest_cmp expect1 debug1 &&\n'> <'\n'> 
          <
'\tgit grep --debug -i -F "^*TILR^AUN:.* \\\\HALL\xc3\x93 \\$HE[]IMUR!\\$"  2>&1 >/dev/null |\n'
          > <'\t\t grep fixed >debug2 &&\n'> 
          <
'\ttest_write_lines "fixed \\\\^*TILR^AUN:\\\\.\\\\* \\\\\\\\HALL\xc3\x93 \\$HE\\\\[]IMUR!\\\\\\$" >expect2 &&\n'
          > <'\ttest_cmp expect2 debug2\n'>
        )
      }
    )
    (C {(test_expect_success)} {(REGEX_LOCALE)} {(SQ <'pickaxe -i on non-ascii'>)} 
      {
        (SQ <'\n'> <'\tgit commit -m first &&\n'> 
          <'\tgit log --format=%f -i -S"TILRAUN: HALL\xc3\x93 HEIMUR!" >actual &&\n'> <'\techo first >expected &&\n'> <'\ttest_cmp expected actual\n'>
        )
      }
    )
    (C {(test_done)})
  ]
)