(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\u00f3 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\u00d3"))} {(DQ ("Hall\u00f3"))} {(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\u00f3 Heimur!\" &&\n"> 
          <"\tgit grep -i \"TILRAUN: HALL\u00d3 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\u00f3 Heimur!\" &&\n"> 
          <"\tgit grep --perl-regexp -i \"TILRAUN: H.ll\u00f3 Heimur!\" &&\n"> <"\tgit grep --perl-regexp -i \"TILRAUN: H.LL\u00d3 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\u00f3\u00f3 Heimur!\" >file2 &&\n"> 
          <"\tgit add file2 &&\n"> <"\tgit grep -l --perl-regexp \"TILRAUN: H.ll\u00f3+ 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\u00f3 Heimur!\"  2>&1 >/dev/null |\n"> 
          <"\t\t grep fixed >debug1 &&\n"> <"\ttest_write_lines \"fixed TILRAUN: Hall\u00f3 Heimur!\" >expect1 &&\n"> 
          <"\ttest_cmp expect1 debug1 &&\n"> <"\n"> <"\tgit grep --debug -i -F \"TILRAUN: HALL\u00d3 HEIMUR!\"  2>&1 >/dev/null |\n"> 
          <"\t\t grep fixed >debug2 &&\n"> <"\ttest_write_lines \"fixed TILRAUN: HALL\u00d3 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\u00f3 \\$He[]imur!\\$\" >file &&\n"> 
          <"\n"> <"\tgit grep --debug -i -F \"^*TILR^AUN:.* \\\\Hall\u00f3 \\$He[]imur!\\$\" 2>&1 >/dev/null |\n"> 
          <"\t\t grep fixed >debug1 &&\n"> 
          <
"\ttest_write_lines \"fixed \\\\^*TILR^AUN:\\\\.\\\\* \\\\\\\\Hall\u00f3 \\$He\\\\[]imur!\\\\\\$\" >expect1 &&\n"
          > <"\ttest_cmp expect1 debug1 &&\n"> <"\n"> 
          <
"\tgit grep --debug -i -F \"^*TILR^AUN:.* \\\\HALL\u00d3 \\$HE[]IMUR!\\$\"  2>&1 >/dev/null |\n"
          > <"\t\t grep fixed >debug2 &&\n"> 
          <
"\ttest_write_lines \"fixed \\\\^*TILR^AUN:\\\\.\\\\* \\\\\\\\HALL\u00d3 \\$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\u00d3 HEIMUR!\" >actual &&\n"> <"\techo first >expected &&\n"> <"\ttest_cmp expected actual\n">
        )
      }
    )
    (C {(test_done)})
  ]
)