5 from xml.dom import minidom
8 from pasytest import PasyTest as _PasyTest
11 from pyatspi import Accessible
13 ATSPI_LAYER_WIDGET = 3
15 ATSPI_LAYER_WINDOW = 7
17 extents_expected = [(0,0,30,20), (40,30,30,40), (0,0,70,70)]
18 sizes_expected = [(30,20), (30,40), (70,70)]
19 positions_expected = [(0,0), (40,30), (0,0)]
20 layers_expected = [ATSPI_LAYER_WINDOW, ATSPI_LAYER_WIDGET, ATSPI_LAYER_MDI]
21 zorders_expected = [-100, 100]
23 class ComponentTest(_PasyTest):
27 "test_getAccessibleAtPoint",
34 "test_registerFocusHandler",
35 "test_deregisterFocusHandler",
40 def __init__(self, bus, path):
41 _PasyTest.__init__(self, "Accessible", False)
45 def setup(self, test):
46 self._cache = pyatspi.TestApplicationCache(self._bus, self._path)
48 def test_contains(self, test):
51 def test_getAccessibleAtPoint(self, test):
54 def test_getExtents(self, test):
55 root = self._cache.root
56 one = root.getChildAtIndex(0)
57 two = root.getChildAtIndex(1)
59 comps = [one.queryComponent(),
61 root.queryComponent(),]
63 for expected, comp in zip(extents_expected, comps):
64 extents = comp.getExtents(0)
65 test.assertEqual(extents, expected,
66 "Extents not correct. Expected (%d, %d, %d, %d), Recieved (%d, %d, %d, %d)"
67 % (expected[0], expected[1], expected[2], expected[3],
68 extents[0], extents[1], extents[2], extents[3]))
70 def test_getPosition(self, test):
72 root = self._cache.root
73 one = root.getChildAtIndex(0)
74 two = root.getChildAtIndex(1)
76 comps = [one.queryComponent(),
78 root.queryComponent(),]
80 for expected, comp in zip(positions_expected, comps):
81 position = comp.getPosition(0)
82 test.assertEqual(position, expected,
83 "Position not correct. Expected (%d, %d) Recieved (%d, %d)"
84 % (expected[0], expected[1], position[0], position[1]))
86 def test_getSize(self, test):
87 root = self._cache.root
88 one = root.getChildAtIndex(0)
89 two = root.getChildAtIndex(1)
91 comps = [one.queryComponent(),
93 root.queryComponent(),]
95 for expected, comp in zip(sizes_expected, comps):
97 test.assertEqual(size, expected,
98 "Size not correct. Expected (%d, %d) Recieved (%d, %d)"
99 % (expected[0], expected[1], size[0], size[1]))
101 def test_getLayer(self, test):
102 root = self._cache.root
103 one = root.getChildAtIndex(0)
104 two = root.getChildAtIndex(1)
106 comps = [one.queryComponent(),
107 two.queryComponent(),
108 root.queryComponent(),]
110 for expected, comp in zip(layers_expected, comps):
111 layer = comp.getLayer()
112 test.assertEqual(layer, expected,
113 "Layer not correct. Expected %d, Recieved %d"
116 def test_getMDIZOrder(self, test):
117 root = self._cache.root
118 one = root.getChildAtIndex(0)
119 two = root.getChildAtIndex(1)
121 comps = [two.queryComponent(),
122 root.queryComponent(),]
124 for expected, comp in zip(zorders_expected, comps):
125 mdizo = comp.getMDIZOrder()
126 test.assertEqual(mdizo, expected,
127 "ZOrder not correct. Expected %d, Recieved %d"
130 def test_grabFocus(self, test):
133 def test_registerFocusHandler(self, test):
136 def test_deregisterFocusHandler(self, test):
139 def test_getAlpha(self, test):
142 def teardown(self, test):