50629: do not use egrep in tests

This commit is contained in:
Jun-ichi Takimoto 2022-09-15 18:56:20 +09:00
parent eb738c793a
commit 4fc5dc0292
8 changed files with 29 additions and 59 deletions

View file

@ -1,3 +1,9 @@
2022-09-15 Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp>
* 50629: Test/D07multibyte.ztst, Test/E01options.ztst,
Test/V07pcre.ztst, Test/X02zlevi.ztst, Test/X03zlebindkey.ztst,
Test/Y01completion.ztst, Test/ztst.zsh: do not use egrep in tests
2022-08-28 Daniel Shahaf <d.s@daniel.shahaf.name>
* unposted: Completion/Unix/Command/_imagemagick: Add *.svg

View file

@ -1,19 +1,7 @@
%prep
# Find a UTF-8 locale.
setopt multibyte
# Don't let LC_* override our choice of locale.
unset -m LC_\*
mb_ok=
langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
$(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
for LANG in $langs; do
if [[ é = ? ]]; then
mb_ok=1
break;
fi
done
if [[ -z $mb_ok ]]; then
LANG=$(ZTST_find_UTF8)
if [[ -z $LANG ]]; then
ZTST_unimplemented="no UTF-8 locale or multibyte mode is not implemented"
else
print -u $ZTST_fd Testing multibyte with locale $LANG

View file

@ -651,7 +651,7 @@
>noktarg1
>0 1
showopt() { setopt | egrep 'localoptions|ksharrays'; }
showopt() { echo ${(FM)${(@f)"$(setopt)"}:#(localoptions|ksharrays)*} }
f1() { setopt localoptions ksharrays; showopt }
f2() { setopt ksharrays; showopt }
setopt kshoptionprint

View file

@ -6,20 +6,8 @@
return 0
fi
setopt rematch_pcre
# Find a UTF-8 locale.
setopt multibyte
# Don't let LC_* override our choice of locale.
unset -m LC_\*
mb_ok=
langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
$(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
for LANG in $langs; do
if [[ é = ? ]]; then
mb_ok=1
break;
fi
done
if [[ -z $mb_ok ]]; then
LANG=$(ZTST_find_UTF8)
if [[ -z $LANG ]]; then
ZTST_unimplemented="no UTF-8 locale or multibyte mode is not implemented"
else
print -u $ZTST_fd Testing PCRE multibyte with locale $LANG

View file

@ -1,16 +1,7 @@
# Tests of the vi mode of ZLE
%prep
unset -m LC_\*
ZSH_TEST_LANG=
langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
$(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
for LANG in $langs; do
if [[ é = ? ]]; then
ZSH_TEST_LANG=$LANG
break;
fi
done
ZSH_TEST_LANG=$(ZTST_find_UTF8)
if ( zmodload zsh/zpty 2>/dev/null ); then
. $ZTST_srcdir/comptest
comptestinit -v -z $ZTST_testdir/../Src/zsh

View file

@ -3,16 +3,7 @@
# into bindings. The latter is particularly tricky with multibyte sequences.
%prep
unset -m LC_\*
ZSH_TEST_LANG=
langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
$(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
for LANG in $langs; do
if [[ é = ? ]]; then
ZSH_TEST_LANG=$LANG
break;
fi
done
ZSH_TEST_LANG=$(ZTST_find_UTF8)
if ( zmodload zsh/zpty 2>/dev/null ); then
. $ZTST_srcdir/comptest
comptestinit -z $ZTST_testdir/../Src/zsh

View file

@ -1,16 +1,7 @@
# Tests for completion system.
%prep
unset -m LC_\*
ZSH_TEST_LANG=
langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
$(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
for LANG in $langs; do
if [[ é = ? ]]; then
ZSH_TEST_LANG=$LANG
break;
fi
done
ZSH_TEST_LANG=$(ZTST_find_UTF8)
if ( zmodload zsh/zpty 2>/dev/null ); then
. $ZTST_srcdir/comptest
mkdir comp.tmp

View file

@ -37,6 +37,21 @@ emulate -R zsh
# LANG must be passed to child zsh.
export LANG
# find UTF-8 locale
ZTST_find_UTF8 () {
setopt multibyte
# Don't let LC_* override our choice of locale.
unset -m LC_\*
local langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
${(M)$(locale -a 2>/dev/null):#*.(utf8|UTF-8)})
for LANG in $langs; do
if [[ é = ? ]]; then
echo $LANG
return
fi
done
}
# Don't propagate variables that are set by default in the shell.
typeset +x WORDCHARS