File: gtkcases.py

package info (click to toggle)
ibus-typing-booster 2.10.5-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 87,788 kB
  • sloc: xml: 799,041; python: 22,939; sh: 3,519; makefile: 342
file content (53 lines) | stat: -rwxr-xr-x 2,221 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/python3
# -*- coding: utf-8 -*-

# 'init' has one array which is [keysym, keycode, modifier] and to be run
# before the main tests. E.g.
# Ctrl-space to enable Hiragana mode
#
# 'tests' cases are the main test cases.
# 'preedit' case runs to create a preedit text.
# 'lookup' case runs to update a lookup table.
# 'commit' case runs to commit the preedit text.
# 'result' case is the expected output.
# 'preedit', 'lookup', 'commit' can choose the type of either 'string' or 'keys'
# 'string' type is a string sequence which does not need modifiers

from gi import require_version as gi_require_version
gi_require_version('IBus', '1.0')
from gi.repository import IBus

TestCases = {
    #'init': [IBus.KEY_j, 0, IBus.ModifierType.CONTROL_MASK],
    'tests': [
                { 'preedit': { 'string': 'defaut' },
                  'lookup': { 'keys': [[IBus.KEY_Tab, 0, 0]] },
                  'commit': { 'keys': [[IBus.KEY_space, 0, 0]] },
                  'result': { 'string': 'défaut ' }
                },
                { 'preedit': { 'string': 'app' },
                  # This lookup order is French by default.
                  'lookup': { 'keys': [[IBus.KEY_Tab, 0, 0],
                                       [IBus.KEY_Tab, 0, 0],
                                       [IBus.KEY_Tab, 0, 0],
                                       [IBus.KEY_Tab, 0, 0]]
                            },
                  'commit': { 'keys': [[IBus.KEY_Return, 0, 0]] },
                  'result': { 'string': 'apple' }
                },
                { 'preedit': { 'keys': [[IBus.KEY_Multi_key, 0, 0],
                                        [IBus.KEY_e, 0, 0],
                                        [IBus.KEY_apostrophe, 0, 0]]
                             },
                  'commit': { 'keys': [[IBus.KEY_space, 0, 0]] },
                  'result': { 'string': 'é ' }
                },
                { 'preedit': { 'keys': [[IBus.KEY_dead_acute, 0, 0],
                                        [IBus.KEY_e, 0, 0]]
                             },
                  'commit': { 'keys': [[IBus.KEY_space, 0, 0]] },
                  'result': { 'string': 'é ' }
                },
             ]

}