diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch index e69de29..021f84a 100644 --- a/ibus-HEAD.patch +++ b/ibus-HEAD.patch @@ -0,0 +1,108 @@ +From b3b90f0e467ade81165d67638ca7c2541963a879 Mon Sep 17 00:00:00 2001 +From: fujiwarat +Date: Sat, 20 Mar 2021 20:28:42 +0900 +Subject: [PATCH] src/tests: Change default session gnome-session to mutter + +gnome-shell 40 now shows the overview mode by login and +gnome-desktop-testing-runner cannot get the focus. +Now the default session is changed to mutter from gnome-session. +The default may be changed to twm if mutter also will be changed +not to accept the application focus in the future. + +Disable Tour dialog which prevent test application from getting the +input focus. + +Don't output FAIL if the actual failure is 0 for Fedora CI. + +BUG=https://discourse.gnome.org/t/focus-on-autostart-application-by-login/5863 +--- + src/tests/ibus-desktop-testing-runner.in | 31 +++++++++++++++++++----- + 1 file changed, 25 insertions(+), 6 deletions(-) + +diff --git a/src/tests/ibus-desktop-testing-runner.in b/src/tests/ibus-desktop-testing-runner.in +index 4232c549..23e3411e 100755 +--- a/src/tests/ibus-desktop-testing-runner.in ++++ b/src/tests/ibus-desktop-testing-runner.in +@@ -4,7 +4,7 @@ + # + # ibus - The Input Bus + # +-# Copyright (c) 2018-2020 Takao Fujiwara ++# Copyright (c) 2018-2021 Takao Fujiwara + # Copyright (c) 2018 Red Hat, Inc. + # + # This program is free software; you can redistribute it and/or modify +@@ -36,7 +36,7 @@ + + + PROGNAME=`basename $0` +-VERSION=0.1 ++VERSION=0.2 + DISPLAY=:99.0 + BUILDDIR="." + SRCDIR="." +@@ -44,7 +44,7 @@ TEST_LOG="test-suite.log" + TEST_LOG_STDOUT=0 + RESULT_LOG="" + HAVE_GRAPHICS=1 +-DESKTOP_COMMAND="dbus-launch --exit-with-session gnome-session" ++DESKTOP_COMMAND="dbus-launch --exit-with-session mutter" + PID_XORG=0 + PID_GNOME_SESSION=0 + TESTING_RUNNER="default" +@@ -80,7 +80,9 @@ usage() + "-b, --builddir=BUILDDIR Set the BUILDDIR\n" \ + "-s, --srcdir=SOURCEDIR Set the SOURCEDIR\n" \ + "-c, --no-graphics Use Xvfb instead of Xorg\n" \ +-"-d, --desktop=DESKTOP Run DESTKTOP. The default is gnome-session\n" \ ++"-d, --desktop=DESKTOP Run DESTKTOP. The default is mutter.\n" \ ++" Suffix '-with-dbus' can run DESKTOP with dbus session." \ ++" E.g. --desktop=gnome-session-with-dbus" \ + "-t, --tests=\"TESTS...\" Run TESTS programs which is separated by space\n" \ + "-r, --runner=RUNNER Run TESTS programs with a test RUNNER.\n" \ + " RUNNDER = gnome or default.\n" \ +@@ -115,6 +117,12 @@ parse_args() + * ) usage; exit 1;; + esac + done ++ DL='$' ++ HAS_DBUS_SUFFIX=`echo "$DESKTOP_COMMAND" | grep "\-with\-dbus$DL"` ++ if [ x"$HAS_DBUS_SUFFIX" != x ] ; then ++ DESKTOP_COMMAND=`echo "$DESKTOP_COMMAND" | sed -e 's/-with-dbus$//'` ++ DESKTOP_COMMAND="dbus-launch --exit-with-session $DESKTOP_COMMAND" ++ fi + } + + init_desktop() +@@ -221,6 +229,12 @@ run_desktop() + if [ x"$HAS_GNOME" = x ] ; then + ibus-daemon --daemonize --verbose + sleep 3 ++ else ++ # Disable Tour dialog to get focus ++ V=`gsettings get org.gnome.shell welcome-dialog-last-shown-version` ++ if [ x"$V" = x ] ; then ++ gsettings set org.gnome.shell welcome-dialog-last-shown-version '100' ++ fi + fi + } + +@@ -360,8 +374,13 @@ EOF_RUNNER + ;; + esac + echo "" +- print_log -e "${GREEN}PASS${NC}: $pass" +- print_log -e "${RED}FAIL${NC}: $fail" ++ # Fedora CI assumes the test is failed even if $fail is 0. ++ if [ $pass -ne 0 ] ; then ++ print_log -e "${GREEN}PASS${NC}: $pass" ++ fi ++ if [ $fail -ne 0 ] ; then ++ print_log -e "${RED}FAIL${NC}: $fail" ++ fi + echo "" + if [ $TEST_LOG_STDOUT -eq 1 ] ; then + cat $TEST_LOG +-- +2.28.0 + diff --git a/ibus.spec b/ibus.spec index 89b843b..8c493d8 100644 --- a/ibus.spec +++ b/ibus.spec @@ -38,7 +38,7 @@ Name: ibus Version: 1.5.24 -Release: 1%{?dist} +Release: 3%{?dist} Summary: Intelligent Input Bus for Linux OS License: LGPLv2+ URL: https://github.com/ibus/%name/wiki @@ -46,6 +46,7 @@ Source0: https://github.com/ibus/%name/releases/download/%{version}/%{nam Source1: %{name}-xinput Source2: %{name}.conf.5 # Patch0: %%{name}-HEAD.patch +Patch0: %{name}-HEAD.patch # Under testing #1349148 #1385349 #1350291 #1406699 #1432252 #1601577 Patch1: %{name}-1385349-segv-bus-proxy.patch @@ -487,6 +488,12 @@ dconf update || : %{_datadir}/installed-tests/ibus %changelog +* Sat Mar 20 2021 Takao Fujiwara - 1.5.24-3 +- Don't output FAIL if the actual failure is 0 for Fedora CI + +* Sat Mar 20 2021 Takao Fujiwara - 1.5.24-2 +- Change default session to mutter from gnome in desktop-testing + * Mon Feb 22 2021 Takao Fujiwara - 1.5.24-1 - Bump to 1.5.24 diff --git a/tests/roles/ibus-desktop-testing-role/tasks/main.yml b/tests/roles/ibus-desktop-testing-role/tasks/main.yml index f1d957e..50a10bf 100644 --- a/tests/roles/ibus-desktop-testing-role/tasks/main.yml +++ b/tests/roles/ibus-desktop-testing-role/tasks/main.yml @@ -76,30 +76,35 @@ if [ $? -eq 0 ]; then status="PASS: frame" fi - echo "${status} $TEST" >> {{ remote_artifacts }}/test.log + echo "${status}" >> {{ remote_artifacts }}/test.log + echo "#### {{ remote_artifacts }}/{{ installed_test_name }}.log" + if [ -f {{ remote_artifacts }}/{{ installed_test_name }}.log ] ; then + cat {{ remote_artifacts }}/{{ installed_test_name }}.log + fi + echo "#" + echo "#### {{ remote_artifacts }}/test.log" + if [ -f {{ remote_artifacts }}/test.log ] ; then + cat {{ remote_artifacts }}/test.log + fi + echo "#" - 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 + failed_when: False - name: Set role result set_fact: