#3 Update to 1.10.1
Closed 3 years ago by mfabian. Opened 3 years ago by mfabian.
rpms/ mfabian/ibus-table f32  into  f32

file modified
+1
@@ -58,3 +58,4 @@ 

  /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

file modified
+58 -8
@@ -3,7 +3,7 @@ 

  %global _python_bytecompile_extra 1

  

  Name:       ibus-table

- Version:    1.10.0

+ Version:    1.10.1

  Release:    1%{?dist}

  Summary:    The Table engine for IBus platform

  License:    LGPLv2+
@@ -15,9 +15,15 @@ 

  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
@@ -25,6 +31,8 @@ 

  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

  
@@ -40,12 +48,20 @@ 

  %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
@@ -56,6 +72,7 @@ 

  %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
@@ -74,11 +91,32 @@ 

  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 ] && \
@@ -104,7 +142,19 @@ 

  %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

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (ibus-table-1.10.0.tar.gz) = cb9d4c378f2acbffdeb034ef33b80eef2e971d8196222c9fe0d72b15c025ab30fdc68a4de0c6b6e1ecae296b8e3555a769f6a7dabb9dbf1f544dc16e8d08edd4

+ SHA512 (ibus-table-1.10.1.tar.gz) = 596e2ca9ac1f174325dc35f21f66e7753f224ebac1e8ae9e56bdca3b2c649a66274b4d94ca4c4e8166e5d24b974aaefa6a0dc2696ae647fb782f212098225f26

file removed
-15
@@ -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

@@ -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

@@ -0,0 +1,4 @@ 

+ ---

+ 

+ dependencies:

+     - role: str-common-init

@@ -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

file modified
+6 -38
@@ -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

+