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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
import unittest
import warnings
from common import gobject, atk, pango, gtk, gdk
class EnumTest(unittest.TestCase):
def testEnums(self):
assert issubclass(gobject.GEnum, int)
assert isinstance(atk.LAYER_OVERLAY, atk.Layer)
assert isinstance(atk.LAYER_OVERLAY, int)
assert 'LAYER_OVERLAY' in repr(atk.LAYER_OVERLAY)
assert int(atk.LAYER_OVERLAY)
warnings.filterwarnings("error", "", Warning, "", 0)
try:
assert atk.LAYER_INVALID != atk.RELATION_NULL
except Warning:
pass
else:
raise AssertionError
warnings.resetwarnings()
assert atk.LAYER_INVALID == 0
assert atk.LAYER_INVALID != 1
assert atk.LAYER_INVALID != -1
assert atk.LAYER_INVALID != atk.LAYER_BACKGROUND
def testWindowGetState(self):
win = gtk.Window()
win.realize()
state = win.window.get_state()
assert state == gdk.WINDOW_STATE_ICONIFIED
assert isinstance(state, gdk.WindowState)
assert 'WINDOW_STATE_ICONIFIED' in repr(state)
def testProperty(self):
win = gtk.Window()
wtype = win.get_property('type')
assert wtype == gtk.WINDOW_TOPLEVEL
assert isinstance(wtype, gtk.WindowType)
assert 'WINDOW_TOPLEVEL' in repr(wtype)
def testAtkObj(self):
obj = atk.NoOpObject(gobject.GObject())
assert obj.get_role() == atk.ROLE_INVALID
def testGParam(self):
win = gtk.Window()
enums = filter(lambda x: gobject.type_is_a(x.value_type, gobject.GEnum),
gobject.list_properties(win))
assert enums
enum = enums[0]
assert hasattr(enum, 'enum_class')
assert issubclass(enum.enum_class, gobject.GEnum)
class FlagsTest(unittest.TestCase):
def testFlags(self):
assert issubclass(gobject.GFlags, int)
assert isinstance(gdk.BUTTON_PRESS_MASK, gdk.EventMask)
assert isinstance(gdk.BUTTON_PRESS_MASK, int)
warnings.filterwarnings("error", "", Warning, "", 0)
try:
assert gtk.ACCEL_VISIBLE != gtk.EXPAND
except Warning:
pass
else:
raise AssertionError
warnings.resetwarnings()
assert gdk.BUTTON_PRESS_MASK == 256
assert gdk.BUTTON_PRESS_MASK != 0
assert gdk.BUTTON_PRESS_MASK != -256
assert gdk.BUTTON_PRESS_MASK != gdk.BUTTON_RELEASE_MASK
assert gdk.EventMask.__bases__[0] == gobject.GFlags
assert len(gdk.EventMask.__flags_values__) == 22
a = gdk.BUTTON_PRESS_MASK
b = gdk.BUTTON_PRESS_MASK | gdk.BUTTON_RELEASE_MASK
c = gdk.BUTTON_PRESS_MASK | gdk.BUTTON_RELEASE_MASK | gdk.ENTER_NOTIFY_MASK
assert int(a)
assert int(a) == int(gdk.BUTTON_PRESS_MASK)
assert int(b)
assert int(b) == (int(gdk.BUTTON_PRESS_MASK) |
int(gdk.BUTTON_RELEASE_MASK))
assert int(c)
assert int(c) == (int(gdk.BUTTON_PRESS_MASK) |
int(gdk.BUTTON_RELEASE_MASK) |
int(gdk.ENTER_NOTIFY_MASK))
warnings.filterwarnings("error", "", Warning, "", 0)
try:
value = gdk.BUTTON_PRESS_MASK + gdk.BUTTON_RELEASE_MASK
except Warning:
pass
else:
raise AssertionError
warnings.resetwarnings()
if __name__ == '__main__':
unittest.main()
|