Update to 1.10.1
- Add GUI test - Make output of ibus-table-createdb deterministic - Update translations from Weblate (updated fr, tr, zh_CN)
This commit is contained in:
parent
0b777236a6
commit
2a401817cf
1
.gitignore
vendored
1
.gitignore
vendored
@ -58,3 +58,4 @@ ibus-table-1.3.0.20100621.tar.gz
|
||||
/ibus-table-1.9.24.tar.gz
|
||||
/ibus-table-1.9.25.tar.gz
|
||||
/ibus-table-1.10.0.tar.gz
|
||||
/ibus-table-1.10.1.tar.gz
|
||||
|
@ -1,5 +1,5 @@
|
||||
Name: ibus-table
|
||||
Version: 1.10.0
|
||||
Version: 1.10.1
|
||||
Release: 1%{?dist}
|
||||
Summary: The Table engine for IBus platform
|
||||
License: LGPLv2+
|
||||
@ -10,9 +10,15 @@ Requires: ibus > 1.3.0
|
||||
BuildRequires: gcc
|
||||
BuildRequires: ibus-devel > 1.3.0
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: libappstream-glib
|
||||
# for the unit tests
|
||||
BuildRequires: appstream
|
||||
BuildRequires: libappstream-glib
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: python3-mock
|
||||
BuildRequires: python3-gobject
|
||||
BuildRequires: python3-gobject-base
|
||||
BuildRequires: dbus-x11
|
||||
BuildRequires: xorg-x11-server-Xvfb
|
||||
BuildRequires: ibus-table-chinese-wubi-jidian
|
||||
BuildRequires: ibus-table-chinese-cangjie
|
||||
BuildRequires: ibus-table-chinese-stroke5
|
||||
@ -20,6 +26,8 @@ BuildRequires: ibus-table-code
|
||||
BuildRequires: ibus-table-latin
|
||||
BuildRequires: ibus-table-translit
|
||||
BuildRequires: ibus-table-tv
|
||||
# A window manger is needed for the GUI test
|
||||
BuildRequires: i3
|
||||
|
||||
Obsoletes: ibus-table-additional < 1.2.0.20100111-5
|
||||
|
||||
@ -35,12 +43,20 @@ Requires: %{name} = %{version}-%{release}, pkgconfig
|
||||
%description -n %{name}-devel
|
||||
Development files for %{name}.
|
||||
|
||||
%package tests
|
||||
Summary: Tests for the %{name} package
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description tests
|
||||
The %{name}-tests package contains tests that can be used to verify
|
||||
the functionality of the installed %{name} package.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
export PYTHON=%{__python3}
|
||||
%configure --disable-static --disable-additional
|
||||
%configure --disable-static --disable-additional --enable-installed-tests
|
||||
%__make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
@ -53,6 +69,7 @@ export PYTHON=%{__python3}
|
||||
%find_lang %{name}
|
||||
|
||||
%check
|
||||
appstreamcli validate --pedantic --explain --no-net %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
|
||||
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
|
||||
desktop-file-validate \
|
||||
$RPM_BUILD_ROOT%{_datadir}/applications/ibus-setup-table.desktop
|
||||
@ -71,11 +88,32 @@ dconf dump /
|
||||
dconf write /org/freedesktop/ibus/engine/table/wubi-jidian/chinesemode 1
|
||||
dconf write /org/freedesktop/ibus/engine/table/wubi-jidian/spacekeybehavior false
|
||||
dconf dump /
|
||||
ibus-daemon -drx
|
||||
make -C tests run_tests
|
||||
pushd tests
|
||||
./run_tests
|
||||
popd
|
||||
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
|
||||
cat tests/*.log
|
||||
if [ $rc != 0 ] ; then
|
||||
exit $rc
|
||||
fi
|
||||
|
||||
%post
|
||||
[ -x %{_bindir}/ibus ] && \
|
||||
@ -101,7 +139,19 @@ popd
|
||||
%files devel
|
||||
%{_datadir}/pkgconfig/%{name}.pc
|
||||
|
||||
%files tests
|
||||
%dir %{_libexecdir}/installed-tests
|
||||
%{_libexecdir}/installed-tests/%{name}
|
||||
%dir %{_datadir}/installed-tests
|
||||
%{_datadir}/installed-tests/%{name}
|
||||
|
||||
%changelog
|
||||
* Wed Jul 15 2020 Mike FABIAN <mfabian@redhat.com> - 1.10.1-1
|
||||
- Update to 1.10.1
|
||||
- Add GUI test
|
||||
- Make output of ibus-table-createdb deterministic
|
||||
- Update translations from Weblate (updated fr, tr, zh_CN)
|
||||
|
||||
* Wed Jul 01 2020 Mike FABIAN <mfabian@redhat.com> - 1.10.0-1
|
||||
- Update to 1.10.0
|
||||
- Add suggestion mode feature
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (ibus-table-1.10.0.tar.gz) = cb9d4c378f2acbffdeb034ef33b80eef2e971d8196222c9fe0d72b15c025ab30fdc68a4de0c6b6e1ecae296b8e3555a769f6a7dabb9dbf1f544dc16e8d08edd4
|
||||
SHA512 (ibus-table-1.10.1.tar.gz) = 596e2ca9ac1f174325dc35f21f66e7753f224ebac1e8ae9e56bdca3b2c649a66274b4d94ca4c4e8166e5d24b974aaefa6a0dc2696ae647fb782f212098225f26
|
||||
|
@ -1,15 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -x
|
||||
|
||||
check_return_value () {
|
||||
if [ $1 != 0 ] ; then
|
||||
exit $1
|
||||
fi
|
||||
}
|
||||
|
||||
cd $1
|
||||
./configure --prefix=/usr
|
||||
check_return_value $?
|
||||
make check && rc=0 || rc=1; cat tests/test-suite.log
|
||||
exit $rc
|
25
tests/roles/ibus-desktop-testing-role/defaults/main.yml
Normal file
25
tests/roles/ibus-desktop-testing-role/defaults/main.yml
Normal file
@ -0,0 +1,25 @@
|
||||
role_pkgs_req:
|
||||
- rsync
|
||||
- xorg-x11-server-Xvfb
|
||||
- appstream
|
||||
- libappstream-glib
|
||||
- desktop-file-utils
|
||||
- python3-mock
|
||||
- python3-gobject
|
||||
- python3-gobject-base
|
||||
- glib2
|
||||
- gtk3
|
||||
- dconf
|
||||
- dbus-x11
|
||||
- ibus
|
||||
- ibus-devel
|
||||
- gcc
|
||||
- python3-devel
|
||||
- python3-pyxdg
|
||||
- xorg-x11-server-Xvfb
|
||||
- ibus-table-chinese-wubi-jidian
|
||||
- ibus-table-chinese-cangjie
|
||||
- ibus-table-chinese-stroke5
|
||||
- ibus-table-code
|
||||
- ibus-table-latin
|
||||
- ibus-table-translit
|
4
tests/roles/ibus-desktop-testing-role/meta/main.yml
Normal file
4
tests/roles/ibus-desktop-testing-role/meta/main.yml
Normal file
@ -0,0 +1,4 @@
|
||||
---
|
||||
|
||||
dependencies:
|
||||
- role: str-common-init
|
101
tests/roles/ibus-desktop-testing-role/tasks/main.yml
Normal file
101
tests/roles/ibus-desktop-testing-role/tasks/main.yml
Normal file
@ -0,0 +1,101 @@
|
||||
---
|
||||
- name: Check if GNOME installed-tests testing harness is installed
|
||||
register: gnome_desktop_testing_runner
|
||||
find:
|
||||
paths: "{{ ansible_env.PATH.split(':') }}"
|
||||
pattern: gnome-desktop-testing-runner
|
||||
|
||||
- name: Build and install GNOME installed-tests testing harness
|
||||
when: gnome_desktop_testing_runner.matched == 0
|
||||
block:
|
||||
- name: Installing build dependencies for IBus and GNOME installed-tests testing harness
|
||||
package:
|
||||
name:
|
||||
- git
|
||||
- make
|
||||
- gcc
|
||||
- diffutils
|
||||
- autoconf
|
||||
- automake
|
||||
- libtool
|
||||
- glib2-devel
|
||||
- systemd-devel
|
||||
- gnome-session
|
||||
- gnome-shell
|
||||
- dbus-x11
|
||||
- xorg-x11-server-Xvfb
|
||||
- ibus
|
||||
- ibus-desktop-testing
|
||||
- ibus-table-tests
|
||||
|
||||
- name: Fetching GNOME installed-tests testing harness source from remote repository
|
||||
git:
|
||||
repo: 'https://gitlab.gnome.org/GNOME/gnome-desktop-testing.git'
|
||||
dest: gnome-desktop-testing
|
||||
force: yes
|
||||
|
||||
- name: Configure GNOME installed-tests testing harness build
|
||||
command: ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var
|
||||
args:
|
||||
chdir: gnome-desktop-testing
|
||||
|
||||
- name: Build GNOME installed-tests testing harness
|
||||
command: make
|
||||
args:
|
||||
chdir: gnome-desktop-testing
|
||||
|
||||
- name: Install GNOME installed-tests testing harness
|
||||
command: make install
|
||||
args:
|
||||
chdir: gnome-desktop-testing
|
||||
|
||||
- name: Start IBus installed-tests testing harness
|
||||
environment:
|
||||
ANSIBLE: 1
|
||||
TMPDIR: '{{ remote_artifacts }}'
|
||||
G_MESSAGES_DEBUG: 'all'
|
||||
block:
|
||||
- name: Execute IBus table tests
|
||||
shell: |
|
||||
set -e
|
||||
status="FAIL: frame"
|
||||
ibus-desktop-testing-runner \
|
||||
--no-graphics \
|
||||
--runner=gnome \
|
||||
--timeout=1200 \
|
||||
--tests='{{ installed_test_name }}' \
|
||||
--output='{{ remote_artifacts }}/{{ installed_test_name }}.log' \
|
||||
--result='{{ remote_artifacts }}/test.log' \
|
||||
null
|
||||
if [ $? -eq 0 ]; then
|
||||
status="PASS: frame"
|
||||
fi
|
||||
echo "${status} $TEST" >> {{ remote_artifacts }}/test.log
|
||||
|
||||
- name: Check the results
|
||||
shell: |
|
||||
log="{{ remote_artifacts }}/test.log"
|
||||
if [ ! -f $log ] ; then
|
||||
echo ERROR
|
||||
exit 1
|
||||
else
|
||||
FAIL=`grep "^FAIL: " $log | grep -v 'FAIL: 0$'`
|
||||
if [ x"$FAIL" != x ] ; then
|
||||
echo ERROR
|
||||
exit 1
|
||||
else
|
||||
echo PASS
|
||||
fi
|
||||
fi
|
||||
register: test_fails
|
||||
#failed_when: False
|
||||
|
||||
- name: Set role result
|
||||
set_fact:
|
||||
role_result: "{{ test_fails.stdout }}"
|
||||
role_result_failed: "{{ (test_fails.stdout|d|length > 0) or (test_fails.stderr|d|length > 0) }}"
|
||||
role_result_msg: "{{ test_fails.stdout|d('tests failed.') }}"
|
||||
|
||||
- include_role:
|
||||
name: str-common-final
|
||||
|
@ -1,16 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -x
|
||||
|
||||
check_return_value () {
|
||||
if [ $1 != 0 ] ; then
|
||||
exit $1
|
||||
fi
|
||||
}
|
||||
|
||||
pushd /usr/share/ibus-table/engine
|
||||
for i in $@; do
|
||||
python3 ${i} -v
|
||||
check_return_value $?
|
||||
done
|
||||
popd
|
@ -1,40 +1,8 @@
|
||||
- hosts: localhost
|
||||
vars:
|
||||
- artifacts: "{{ lookup('env', 'TEST_ARTIFACTS')|default('./artifacts', true) }}"
|
||||
tags:
|
||||
- classic
|
||||
remote_user: root
|
||||
roles:
|
||||
- role: standard-test-source # to get the source tar ball to do “make check”
|
||||
- role: standard-test-basic
|
||||
required_packages:
|
||||
- make
|
||||
- libappstream-glib
|
||||
- desktop-file-utils
|
||||
- python3-gobject
|
||||
- python3-gobject-base
|
||||
- glib2
|
||||
- gtk3
|
||||
- dconf
|
||||
- dbus-x11
|
||||
- ibus
|
||||
- ibus-devel
|
||||
- gcc
|
||||
- python3-devel
|
||||
- python3-pyxdg
|
||||
- ibus-table-chinese-wubi-jidian
|
||||
- ibus-table-chinese-cangjie
|
||||
- ibus-table-chinese-stroke5
|
||||
- ibus-table-code
|
||||
- ibus-table-latin
|
||||
- ibus-table-translit
|
||||
tests:
|
||||
- make-check:
|
||||
dir: ./
|
||||
run: bash ./make_check.sh ./source
|
||||
- doctests-table.py:
|
||||
dir: ./
|
||||
run: bash ./run_python_doctests.sh table.py
|
||||
- doctests-it_util.py:
|
||||
dir: ./
|
||||
run: bash ./run_python_doctests.sh it_util.py
|
||||
- role: ibus-desktop-testing-role
|
||||
installed_test_name: ibus-table
|
||||
tags:
|
||||
- classic
|
||||
- gating
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user