ibus-anthy/ibus-anthy-HEAD.patch
DistroBaker 8ca745540e Merged update from upstream sources
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/ibus-anthy.git#eb6aeefd5c62c302ff0fa626d829749a8ac21ee1
2021-03-25 21:40:18 +00:00

138 lines
4.5 KiB
Diff

From 4d1f0b36c43780586f5d0c2622eb92d068ebe281 Mon Sep 17 00:00:00 2001
From: fujiwarat <takao.fujiwara1@gmail.com>
Date: Sun, 21 Mar 2021 15:25:41 +0900
Subject: [PATCH] tests: Output info to stderr instead of StringIO
---
tests/anthytest.py | 51 ++++++++++++++++++++++++++++++----------------
1 file changed, 33 insertions(+), 18 deletions(-)
diff --git a/tests/anthytest.py b/tests/anthytest.py
index bff3078..1d18d19 100755
--- a/tests/anthytest.py
+++ b/tests/anthytest.py
@@ -28,17 +28,31 @@ TAP_MODULE_PYCOTAP = list(range(3))
tap_module = TAP_MODULE_NONE
+# Need to flush the output against Gtk.main()
+def printflush(sentence):
+ try:
+ print(sentence, flush=True)
+ except IOError:
+ pass
+
+def printerr(sentence):
+ try:
+ print(sentence, flush=True, file=sys.stderr)
+ except IOError:
+ pass
+
try:
from tap import TAPTestRunner
tap_module = TAP_MODULE_TAPPY
- print('Load tappy')
+ printflush('## Load tappy')
except ModuleNotFoundError:
try:
from pycotap import TAPTestRunner
+ from pycotap import LogMode
tap_module = TAP_MODULE_PYCOTAP
- print('Load pycotap')
+ printflush('## Load pycotap')
except ModuleNotFoundError as err:
- print('Ignore tap module: %s' % str(err))
+ printflush('## Ignore tap module: %s' % str(err))
PY3K = sys.version_info >= (3, 0)
DONE_EXIT = True
@@ -55,18 +69,6 @@ sys.path.append('/usr/share/ibus-anthy/engine')
from anthycases import TestCases
-# Need to flush the output against Gtk.main()
-def printflush(sentence):
- try:
- print(sentence, flush=True)
- except IOError:
- pass
-
-def printerr(sentence):
- try:
- print(sentence, flush=True, file=sys.stderr)
- except IOError:
- pass
@unittest.skipIf(Gdk.Display.open('') == None, 'Display cannot be open.')
class AnthyTest(unittest.TestCase):
@@ -83,8 +85,10 @@ class AnthyTest(unittest.TestCase):
self.__test_index = 0
self.__conversion_index = 0
self.__commit_done = False
+ self.__engine = None
def register_ibus_engine(self):
+ printflush('## Registering engine')
self.__bus = IBus.Bus()
if not self.__bus.is_connected():
self.fail('ibus-daemon is not running')
@@ -144,6 +148,7 @@ class AnthyTest(unittest.TestCase):
def __create_engine_cb(self, factory, engine_name):
if engine_name == 'testanthy':
+ printflush('## Creating engine')
try:
import engine
except ModuleNotFoundError as e:
@@ -176,14 +181,20 @@ class AnthyTest(unittest.TestCase):
window = Gtk.Window(type = Gtk.WindowType.TOPLEVEL)
self.__entry = entry = Gtk.Entry()
window.connect('destroy', Gtk.main_quit)
+ entry.connect('map', self.__entry_map_cb)
entry.connect('focus-in-event', self.__entry_focus_in_event_cb)
entry.connect('preedit-changed', self.__entry_preedit_changed_cb)
buffer = entry.get_buffer()
buffer.connect('inserted-text', self.__buffer_inserted_text_cb)
window.add(entry)
window.show_all()
+ printflush('## Build window')
+
+ def __entry_map_cb(self, entry):
+ printflush('## Map window')
def __entry_focus_in_event_cb(self, entry, event):
+ printflush('## Get focus')
if self.__test_index == len(TestCases['tests']):
if DONE_EXIT:
Gtk.main_quit()
@@ -231,11 +242,11 @@ class AnthyTest(unittest.TestCase):
schema = "org.freedesktop.ibus.engine.anthy.common");
result = settings.get_int('input-mode')
if result != 0:
- printflush('Enable hiragana %d' % result)
+ printflush('## Enable hiragana %d' % result)
key = TestCases['init']
self.__typing(key[0], key[1], key[2])
else:
- printflush('Already hiragana')
+ printflush('## Already hiragana')
def __main_test(self):
self.__conversion_index = 0
@@ -371,7 +382,11 @@ def main():
if args.tap:
loader = unittest.TestLoader()
- runner = TAPTestRunner()
+ if tap_module == TAP_MODULE_PYCOTAP:
+ # Log should be in stderr instead of StringIO
+ runner = TAPTestRunner(test_output_log=LogMode.LogToError)
+ else:
+ runner = TAPTestRunner()
if tap_module == TAP_MODULE_TAPPY:
runner.set_stream(True)
unittest.main(testRunner=runner, testLoader=loader)
--
2.28.0