From 481afec23828c9975438cad3a7b05d258bb6c90b Mon Sep 17 00:00:00 2001 From: Mike FABIAN Date: Jun 29 2021 17:50:55 +0000 Subject: [PATCH 1/2] Fix build --- diff --git a/ibus-table.spec b/ibus-table.spec index e995b87..d5387a7 100644 --- a/ibus-table.spec +++ b/ibus-table.spec @@ -63,8 +63,8 @@ export PYTHON=%{__python3} %__rm -rf $RPM_BUILD_ROOT export PYTHON=%{__python3} %make_install NO_INDEX=true pkgconfigdir=%{_datadir}/pkgconfig -%py_byte_compile %{python3} /usr/share/ibus-table/engine -%py_byte_compile %{python3} /usr/share/ibus-table/setup +%py_byte_compile %{python3} %{buildroot}/usr/share/ibus-table/engine +%py_byte_compile %{python3} %{buildroot}/usr/share/ibus-table/setup %find_lang %{name} From cf6e767321f8186458eec02811d935a7d48b25b8 Mon Sep 17 00:00:00 2001 From: Mike FABIAN Date: Jun 29 2021 17:50:55 +0000 Subject: [PATCH 2/2] Convert CI tests to tmt --- diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/basic.fmf b/plans/basic.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/basic.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..a348c4f --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,46 @@ +test: ./runtest.sh +duration: 50m +framework: beakerlib +require: +# This stuff is only needed if gnome-desktop-testing +# cannot be required as a package and needs to be cloned +# from the git repo and build from source: +# - git +# - make +# - gcc +# - diffutils +# - autoconf +# - automake +# - libtool +# - glib2-devel +# - systemd-devel + - gnome-session + - gnome-shell + - gnome-shell-extension-no-overview + - ibus + - ibus-devel + - ibus-desktop-testing + - gnome-desktop-testing + - ibus-table + - ibus-table-tests + - rsync + - xorg-x11-server-Xvfb + - appstream + - libappstream-glib + - desktop-file-utils + - python3-mock + - python3-gobject + - python3-gobject-base + - glib2 + - gtk3 + - dconf + - dbus-x11 + - 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 diff --git a/tests/roles/ibus-desktop-testing-role/defaults/main.yml b/tests/roles/ibus-desktop-testing-role/defaults/main.yml deleted file mode 100644 index 9ea48ca..0000000 --- a/tests/roles/ibus-desktop-testing-role/defaults/main.yml +++ /dev/null @@ -1,25 +0,0 @@ -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 diff --git a/tests/roles/ibus-desktop-testing-role/meta/main.yml b/tests/roles/ibus-desktop-testing-role/meta/main.yml deleted file mode 100644 index 6626402..0000000 --- a/tests/roles/ibus-desktop-testing-role/meta/main.yml +++ /dev/null @@ -1,4 +0,0 @@ ---- - -dependencies: - - role: str-common-init diff --git a/tests/roles/ibus-desktop-testing-role/tasks/main.yml b/tests/roles/ibus-desktop-testing-role/tasks/main.yml deleted file mode 100644 index 85be0ad..0000000 --- a/tests/roles/ibus-desktop-testing-role/tasks/main.yml +++ /dev/null @@ -1,106 +0,0 @@ ---- -- 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: | - IS_RAWHIDE=`grep -i rawhide /etc/fedora-release` - if [ x"$IS_RAWHIDE" != x ] ; then - echo PASS - exit 0 - fi - 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 - diff --git a/tests/runtest.sh b/tests/runtest.sh new file mode 100755 index 0000000..cb1a8a8 --- /dev/null +++ b/tests/runtest.sh @@ -0,0 +1,40 @@ +#!/bin/bash +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +NAME=ibus-table + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm ${NAME} + rlAssertRpm gnome-desktop-testing + rlAssertRpm gnome-shell-extension-no-overview + rlAssertBinaryOrigin gnome-desktop-testing-runner gnome-desktop-testing + rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" + rlRun "pushd $tmp" + rlPhaseEnd + + rlPhaseStartTest + rlRun "ibus-desktop-testing-runner \ + --no-graphics \ + --runner=gnome \ + --timeout=1500 \ + --tests=${NAME} \ + --output=${NAME}.log \ + --result=test.log \ + " 0 "Running ${NAME} 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 ${NAME}.log + rlFileSubmit test.log + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $tmp" 0 "Remove tmp directory" + rlPhaseEnd +rlJournalEnd diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index 08966a8..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,8 +0,0 @@ -- hosts: localhost - roles: - - role: ibus-desktop-testing-role - installed_test_name: ibus-table - tags: - - classic - - gating -