2009-27-09 Mark Doffman <mark.doffman@codethink.co.uk>
[platform/core/uifw/at-spi2-atk.git] / tests / pyatspi / desktoptest.py
1 import dbus
2 import gobject
3 import os.path
4
5 from xml.dom import minidom
6 import os
7
8 from pasytest import PasyTest as _PasyTest
9
10 import pyatspi
11
12 class DesktopTest(_PasyTest):
13
14         __tests__ = ["setup",
15                      "test_name",
16                      "test_getChildAtIndex",
17                      "test_isEqual",
18                      "test_getApplication",
19                      "test_getAttributes",
20                      "test_parent",
21                      "test_getIndexInParent",
22                      "test_getLocalizedRoleName",
23                      "test_getRelationSet",
24                      "test_getRole",
25                      "test_getRoleName",
26                      "test_getState",
27                      "test_childCount",
28                      "test_description",
29                      "test_contains",
30                      "test_getAccessibleAtPoint",
31                      "test_getExtents",
32                      "test_getPosition",
33                      "test_getSize",
34                      "test_getLayer",
35                      "test_getMDIZOrder",
36                      "test_grabFocus",
37                      "test_registerFocusHandler",
38                      "test_deregisterFocusHandler",
39                      "test_getAlpha",
40                      "teardown",
41                      ]
42
43         def __init__(self, bus, path):
44                 _PasyTest.__init__(self, "Desktop", False)
45                 self._bus = bus
46                 self._path = path
47
48         def setup(self, test):
49                 self._registry = pyatspi.Registry()
50                 self._desktop = self._registry.getDesktop(0)
51
52         def test_name(self, test):
53                 name = self._desktop.name
54                 test.assertEqual(name, "main", "Expected name - \"main\". Recieved - \"%s\"" % (name,))
55
56         def test_getChildAtIndex(self, test):
57                 root = self._desktop.getChildAtIndex(0)
58                 test.assertEqual(root.name, "main",
59                                          "Expected name - \"main\". Recieved - \"%s\"" % (root.name,))
60                 
61         def test_isEqual(self, test):
62                 if not self._desktop.isEqual(self._desktop):
63                         test.fail("Same accessible found unequal to self")
64
65                 root = self._desktop.getChildAtIndex(0)
66                 if root.isEqual(self._desktop):
67                         test.fail("Different accessibles found equal")
68                 if self._desktop.isEqual(root):
69                         test.fail("Different accessibles found equal")
70
71         def test_getApplication(self, test):
72                 test.assertEqual(self._desktop.getApplication(), None,
73                                 "Expected application - \"None\". Recieved - \"%s\"" % (self._desktop.getApplication(),))
74
75         def test_getAttributes(self, test):
76                 test.assertEqual(self._desktop.getAttributes(), [],
77                                 "Expected attributes - \"[]\". Recieved - \"%s\"" % (self._desktop.getAttributes(),))
78
79         def test_parent(self, test):
80                 test.assertEqual(self._desktop.parent, None,
81                                 "Expected parent - \"None\". Recieved - \"%s\"" % (self._desktop.parent,))
82
83         def test_getIndexInParent(self, test):
84                 test.assertEqual(self._desktop.getIndexInParent(), -1,
85                                 "Expected index - \"-1\". Recieved - \"%d\"" % (self._desktop.getIndexInParent(),))
86
87         def test_getLocalizedRoleName(self, test):
88                 ans = "unknown"
89                 res = self._desktop.getLocalizedRoleName()
90                 test.assertEqual(ans, res,
91                                  "Expected LocalizedRoleName - \"%s\". Recieved - \"%s\"" % (ans, res,))
92
93         def test_getRelationSet(self, test):
94                 rset = self._desktop.getRelationSet()
95                 test.assertEqual(rset, [],
96                                  "Expected relation set - \"[]\". Recieved - \"%s\"" % (rset,))
97
98         def test_getRole(self, test):
99                 test.assertEqual(self._desktop.getRole(), pyatspi.ROLE_UNKNOWN,
100                                  "Expected role - \"ROLE_UNKNOWN\". Recieved - \"%s\"" % (self._desktop.getRole(),))
101
102         def test_getRoleName(self, test):
103                 ans = "unknown"
104                 res = self._desktop.getRoleName()
105                 test.assertEqual(ans, res,
106                                  "Expected RoleName - \"%s\". Recieved - \"%s\"" % (ans, res,))
107
108         def test_getState(self, test):
109                 state = self._desktop.getState()
110                 res = pyatspi.StateSet()
111                 if not state.equals(res):
112                         test.fail("Desktop state set is not empty")
113
114         def test_childCount(self, test):
115                 test.assertEqual(self._desktop.childCount, 1,
116                                  "Expected childCount - \"1\". Recieved - \"%d\"" % (self._desktop.childCount,))
117
118         def test_description(self, test):
119                 description = ""
120                 test.assertEqual(self._desktop.description, description,
121                         "Expected description - \"%s\". Recieved - \"%s\"" % (description, self._desktop.description,))
122
123         def test_contains(self, test):
124                 pass
125
126         def test_getAccessibleAtPoint(self, test):
127                 pass
128
129         def test_getExtents(self, test):
130                 comp = self._desktop.queryComponent()
131  
132                 extents = comp.getExtents(0)
133                 expected = pyatspi.BoundingBox(*(0,0,1024, 768))
134                 test.assertEqual(extents, expected, 
135                                  "Extents not correct. Expected (%d, %d, %d, %d), Recieved (%d, %d, %d, %d)"
136                                  % (expected[0], expected[1], expected[2], expected[3], 
137                                         extents[0], extents[1], extents[2], extents[3]))
138
139         def test_getPosition(self, test):
140                 comp = self._desktop.queryComponent()
141
142                 position = comp.getPosition(0)
143                 test.assertEqual(position, (0,0), 
144                                  "Position not correct. Expected (%d, %d) Recieved (%d, %d)"
145                                  % (0, 0, position[0], position[1]))
146
147         def test_getSize(self, test):
148                 comp = self._desktop.queryComponent()
149  
150                 size = comp.getSize()
151                 test.assertEqual(size, (1024, 768), 
152                                  "Size not correct. Expected (%d, %d) Recieved (%d, %d)"
153                                  % (1024, 768, size[0], size[1]))
154
155         def test_getLayer(self, test):
156                 comp = self._desktop.queryComponent()
157  
158                 layer = comp.getLayer()
159                 test.assertEqual(layer, pyatspi.LAYER_WIDGET, 
160                                  "Layer not correct. Expected %d, Recieved %d"
161                                  % (layer, pyatspi.LAYER_WIDGET))
162
163         def test_getMDIZOrder(self, test):
164                 comp = self._desktop.queryComponent()
165  
166                 mdizo = comp.getMDIZOrder()
167                 test.assertEqual(mdizo, 0, 
168                                  "ZOrder not correct. Expected %d, Recieved %d"
169                                  % (0, mdizo))
170
171         def test_grabFocus(self, test):
172                 pass
173
174         def test_registerFocusHandler(self, test):
175                 pass
176
177         def test_deregisterFocusHandler(self, test):
178                 pass
179
180         def test_getAlpha(self, test):
181                 pass
182
183         def teardown(self, test):
184                 pass