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