Resolves: RHEL-36638 Update to 2.25.9 and Remove dependency on Xvfb from CI tests
- Translation update from Weblate (cs 100%) - Update emoji annotations from CLDR - Drop Python < 3.6 support - Fix test_0_gtk.py: typing booster now avoids clearing the input in do_reset() when the preedit is empty - Remove dependency on Xvfb from ibus-typing-booster.spec - Support compose sequences containing ASCII keys written as <U00XX> code points (Resolves: https://github.com/mike-fabian/ibus-typing-booster/issues/510) - Translation update from Weblate (pt 91.3%)
This commit is contained in:
parent
fbc7bfd009
commit
2036494ada
2
.gitignore
vendored
2
.gitignore
vendored
@ -335,3 +335,5 @@
|
|||||||
/ibus-typing-booster-2.25.5.tar.gz
|
/ibus-typing-booster-2.25.5.tar.gz
|
||||||
/ibus-typing-booster-2.25.6.tar.gz
|
/ibus-typing-booster-2.25.6.tar.gz
|
||||||
/ibus-typing-booster-2.25.7.tar.gz
|
/ibus-typing-booster-2.25.7.tar.gz
|
||||||
|
/ibus-typing-booster-2.25.8.tar.gz
|
||||||
|
/ibus-typing-booster-2.25.9.tar.gz
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
Name: ibus-typing-booster
|
Name: ibus-typing-booster
|
||||||
Version: 2.25.7
|
Version: 2.25.9
|
||||||
Release: %autorelease
|
Release: %autorelease
|
||||||
Summary: A completion input method
|
Summary: A completion input method
|
||||||
License: GPL-3.0-or-later AND Apache-2.0
|
License: GPL-3.0-or-later AND Apache-2.0
|
||||||
@ -77,7 +77,6 @@ BuildRequires: gtk3
|
|||||||
BuildRequires: dconf
|
BuildRequires: dconf
|
||||||
BuildRequires: dbus-x11
|
BuildRequires: dbus-x11
|
||||||
BuildRequires: ibus
|
BuildRequires: ibus
|
||||||
BuildRequires: xorg-x11-server-Xvfb
|
|
||||||
BuildRequires: glibc-langpack-en
|
BuildRequires: glibc-langpack-en
|
||||||
BuildRequires: glibc-langpack-cs
|
BuildRequires: glibc-langpack-cs
|
||||||
BuildRequires: glibc-langpack-km
|
BuildRequires: glibc-langpack-km
|
||||||
@ -86,8 +85,6 @@ BuildRequires: glibc-langpack-am
|
|||||||
BuildRequires: glibc-langpack-de
|
BuildRequires: glibc-langpack-de
|
||||||
BuildRequires: glibc-langpack-ar
|
BuildRequires: glibc-langpack-ar
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
# A window manger is needed for the GUI test
|
|
||||||
# BuildRequires: i3
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
# Some test cases fail on ppc64 and s390x (because of some bugs on
|
# Some test cases fail on ppc64 and s390x (because of some bugs on
|
||||||
# these platforms I think). This makes the build fail for no good
|
# these platforms I think). This makes the build fail for no good
|
||||||
@ -194,26 +191,6 @@ dconf write /org/freedesktop/ibus/engine/typing-booster/showstatusinfoinaux true
|
|||||||
dconf write /org/freedesktop/ibus/engine/typing-booster/inlinecompletion false
|
dconf write /org/freedesktop/ibus/engine/typing-booster/inlinecompletion false
|
||||||
dconf write /org/freedesktop/ibus/engine/typing-booster/keybindings "{'next_input_method': <['Control+Down', 'Control+KP_Down']>, 'previous_input_method': <['Control+Up', 'Control+KP_Up']>, 'lookup_related': <['Mod5+F12']>, 'enable_lookup': <['Tab', 'ISO_Left_Tab', 'KP_Divide']>, 'select_next_candidate': <['Tab', 'ISO_Left_Tab', 'Down', 'KP_Down']>, 'lookup_table_page_down': <['Page_Down', 'KP_Page_Down', 'KP_Next']>, 'toggle_emoji_prediction': <['Mod5+F6']>, 'lookup_table_page_up': <['Page_Up', 'KP_Page_Up', 'KP_Prior']>, 'toggle_off_the_record': <['Mod5+F9']>, 'cancel': <['Escape']>, 'setup': <['Mod5+F10']>, 'select_previous_candidate': <['Shift+Tab', 'Shift+ISO_Left_Tab', 'Up', 'KP_Up']>}"
|
dconf write /org/freedesktop/ibus/engine/typing-booster/keybindings "{'next_input_method': <['Control+Down', 'Control+KP_Down']>, 'previous_input_method': <['Control+Up', 'Control+KP_Up']>, 'lookup_related': <['Mod5+F12']>, 'enable_lookup': <['Tab', 'ISO_Left_Tab', 'KP_Divide']>, 'select_next_candidate': <['Tab', 'ISO_Left_Tab', 'Down', 'KP_Down']>, 'lookup_table_page_down': <['Page_Down', 'KP_Page_Down', 'KP_Next']>, 'toggle_emoji_prediction': <['Mod5+F6']>, 'lookup_table_page_up': <['Page_Up', 'KP_Page_Up', 'KP_Prior']>, 'toggle_off_the_record': <['Mod5+F9']>, 'cancel': <['Escape']>, 'setup': <['Mod5+F10']>, 'select_previous_candidate': <['Shift+Tab', 'Shift+ISO_Left_Tab', 'Up', 'KP_Up']>}"
|
||||||
dconf dump /
|
dconf dump /
|
||||||
export DISPLAY=:1
|
|
||||||
Xvfb $DISPLAY -screen 0 1024x768x16 &
|
|
||||||
# A window manager and and ibus-daemon are needed to run the GUI
|
|
||||||
# test tests/test_gtk.py, for example i3 can be used.
|
|
||||||
#
|
|
||||||
# To debug what is going on if there is a problem with the GUI test
|
|
||||||
# add BuildRequires: x11vnc and start a vnc server:
|
|
||||||
#
|
|
||||||
# x11vnc -display $DISPLAY -unixsock /tmp/mysock -bg -nopw -listen localhost -xkb
|
|
||||||
#
|
|
||||||
# Then one can view what is going on outside of the chroot with vncviewer:
|
|
||||||
#
|
|
||||||
# vncviewer /var/lib/mock/fedora-32-x86_64/root/tmp/mysock
|
|
||||||
#
|
|
||||||
# The GUI test will be skipped if XDG_SESSION_TYPE is not x11 or wayland.
|
|
||||||
#
|
|
||||||
#ibus-daemon -drx
|
|
||||||
#touch /tmp/i3config
|
|
||||||
#i3 -c /tmp/i3config &
|
|
||||||
#export XDG_SESSION_TYPE=x11
|
|
||||||
|
|
||||||
make check && rc=0 || rc=1
|
make check && rc=0 || rc=1
|
||||||
cat tests/*.log
|
cat tests/*.log
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (ibus-typing-booster-2.25.7.tar.gz) = 9603b99293e596c958aa2d21e8f0d78b06c6873769b2206c8f5bc225993d53e6af51d493d664d51b8632550e996f714a9ebf0c4ff8f914cd11b4119ac7570203
|
SHA512 (ibus-typing-booster-2.25.9.tar.gz) = 3427336e15199eb851178393c3568bc8b8dcbae35da0cb9d9ec14740db108d66483e7209d39449e370a55aa11ce1f8d179d6e0a5b1b00b3b17b85af77813eea1
|
||||||
|
@ -18,7 +18,8 @@ require:
|
|||||||
- gnome-shell
|
- gnome-shell
|
||||||
- gnome-shell-extension-no-overview
|
- gnome-shell-extension-no-overview
|
||||||
- dbus-x11
|
- dbus-x11
|
||||||
- xorg-x11-server-Xvfb
|
- xorg-x11-server-Xwayland
|
||||||
|
- xwayland-run
|
||||||
- ibus
|
- ibus
|
||||||
- ibus-devel
|
- ibus-devel
|
||||||
- ibus-desktop-testing
|
- ibus-desktop-testing
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||||
|
|
||||||
NAME=ibus-typing-booster
|
NAME=ibus-typing-booster
|
||||||
|
XFWB_SCRIPT=$(pwd)/xwfb-script.sh
|
||||||
|
|
||||||
rlJournalStart
|
rlJournalStart
|
||||||
rlPhaseStartSetup
|
rlPhaseStartSetup
|
||||||
@ -13,24 +14,63 @@ rlJournalStart
|
|||||||
rlRun "pushd $tmp"
|
rlRun "pushd $tmp"
|
||||||
rlPhaseEnd
|
rlPhaseEnd
|
||||||
|
|
||||||
|
# rlPhaseStartTest
|
||||||
|
# rlRun -t -l "ibus-desktop-testing-runner \
|
||||||
|
# --no-graphics \
|
||||||
|
# --runner=gnome \
|
||||||
|
# --timeout=1500 \
|
||||||
|
# --tests=${NAME} \
|
||||||
|
# --output=${NAME}.log \
|
||||||
|
# --result=test.log \
|
||||||
|
# " 0 "Running ibus-typing-booster tests"
|
||||||
|
# echo "==== ${NAME}.log: ===="
|
||||||
|
# cat ${NAME}.log
|
||||||
|
# echo "==== EOF ${NAME}.log: ===="
|
||||||
|
# echo "==== test.log ===="
|
||||||
|
# cat test.log
|
||||||
|
# echo "==== EOF test.log: ===="
|
||||||
|
# rlAssertNotGrep FAIL test.log
|
||||||
|
# rlFileSubmit ibus-typing-booster.log
|
||||||
|
# rlFileSubmit test.log
|
||||||
|
# rlPhaseEnd
|
||||||
|
|
||||||
rlPhaseStartTest
|
rlPhaseStartTest
|
||||||
rlRun "ibus-desktop-testing-runner \
|
rlRun -t -l "pushd /usr/libexec/installed-tests/ibus-typing-booster" \
|
||||||
--no-graphics \
|
0 "Change to directory of installed tests"
|
||||||
--runner=gnome \
|
TEST_FILES="test_*.py"
|
||||||
--timeout=1500 \
|
# When running locally with `tmt run -vvv -a provision -h local`
|
||||||
--tests=${NAME} \
|
# DISPLAY might be set here and XDG_SESSION_TYPE might be "x11".
|
||||||
--output=${NAME}.log \
|
# In that case, all tests, including the graphical test_0_gtk.py
|
||||||
--result=test.log \
|
# will run fine in this "for" loop. Otherwise the graphical
|
||||||
" 0 "Running ibus-typing-booster tests"
|
# test_0_gtk.py in this for loop will be skipped:
|
||||||
echo "==== ${NAME}.log: ===="
|
for test_file in ${TEST_FILES}
|
||||||
cat ${NAME}.log
|
do
|
||||||
echo "==== EOF ${NAME}.log: ===="
|
rlRun -t -s "./run_tests ${test_file}" 0
|
||||||
echo "==== test.log ===="
|
echo "==== START of `cat ${rlRun_LOG}`: log of ${test_file} ===="
|
||||||
cat test.log
|
cat ${rlRun_LOG}
|
||||||
echo "==== EOF test.log: ===="
|
echo "==== END of `cat ${rlRun_LOG}`: log of ${test_file} ===="
|
||||||
rlAssertNotGrep FAIL test.log
|
rlAssertNotGrep FAIL ${rlRun_LOG}
|
||||||
rlFileSubmit ibus-typing-booster.log
|
rlGetTestState
|
||||||
rlFileSubmit test.log
|
rlLog "Number of failed asserts so far: ${ECODE}"
|
||||||
|
rlFileSubmit ${rlRun_LOG}
|
||||||
|
done
|
||||||
|
if [ -z "${DISPLAY:-}" ]; then
|
||||||
|
rlLogInfo "DISPLAY is empty or unset."
|
||||||
|
rlLogInfo "Therefore, use xfwb-run to run the graphical test_0_gtk.py:"
|
||||||
|
rlRun -t -s "xwfb-run -c mutter -e $tmp/xwfb-run.log -n 99 $XFWB_SCRIPT" \
|
||||||
|
0 "Running test_0_gtk.py in xfwb-run"
|
||||||
|
echo "==== START of `cat ${rlRun_LOG}`: log of xwfb-run ===="
|
||||||
|
cat ${rlRun_LOG}
|
||||||
|
echo "==== END of `cat ${rlRun_LOG}`: log of xwfb-run ===="
|
||||||
|
rlAssertNotGrep FAIL ${rlRun_LOG}
|
||||||
|
rlGetTestState
|
||||||
|
rlLog "Total number of failed asserts: ${ECODE}"
|
||||||
|
rlFileSubmit ${rlRun_LOG}
|
||||||
|
rlFileSubmit xwfb-run.log
|
||||||
|
fi
|
||||||
|
rlGetTestState
|
||||||
|
rlLog "Total number of failed asserts: ${ECODE}"
|
||||||
|
rlRun "popd" 0
|
||||||
rlPhaseEnd
|
rlPhaseEnd
|
||||||
|
|
||||||
rlPhaseStartCleanup
|
rlPhaseStartCleanup
|
||||||
|
32
tests/xwfb-script.sh
Executable file
32
tests/xwfb-script.sh
Executable file
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Run this with `xwfb-run -e /tmp/xwfb-run.log -n 99 xwfb-script.sh`
|
||||||
|
|
||||||
|
# Redirect stderr to stdout:
|
||||||
|
exec 2>&1
|
||||||
|
# without setting GDK_BACKEND=x11, Gtk programs cannot open windows in xfwb-run:
|
||||||
|
export GDK_BACKEND=x11
|
||||||
|
export XDG_SESSION_TYPE=x11
|
||||||
|
echo "starting mutter ..."
|
||||||
|
mutter --x11 &
|
||||||
|
sleep 5
|
||||||
|
echo "mutter started"
|
||||||
|
ibus-daemon --verbose \
|
||||||
|
--replace \
|
||||||
|
--single \
|
||||||
|
--desktop=mutter \
|
||||||
|
--panel=disable \
|
||||||
|
--config=disable &
|
||||||
|
sleep 5
|
||||||
|
echo "ibus-daemon started."
|
||||||
|
pushd /usr/share/ibus-typing-booster/engine
|
||||||
|
/usr/libexec/installed-tests/ibus-typing-booster/test_0_gtk.py -v &
|
||||||
|
TEST_PID=$!
|
||||||
|
# A screenshot for debugging can be made here:
|
||||||
|
#sleep 1
|
||||||
|
#import -window root /tmp/screenshot.png
|
||||||
|
#echo "screenshot done."
|
||||||
|
# Wait for test_0_gtk.py to finish and get its exit code
|
||||||
|
wait $TEST_PID
|
||||||
|
EXIT_CODE=$?
|
||||||
|
echo "The exit code of test_0_gtk.py: $EXIT_CODE"
|
||||||
|
exit $EXIT_CODE
|
Loading…
Reference in New Issue
Block a user