Status: | Merged |
---|---|
Merged at revision: | 226 |
Proposed branch: | lp:~bregma/geis/lp-904731 |
Merge into: | lp:geis |
Diff against target: |
645 lines (+223/-33) 28 files modified
include/geis/geis.h (+0/-4) libutouch-geis/backend/grail/geis_grail_backend.c (+42/-0) libutouch-geis/backend/test_fixture/geis_backend_test_fixture.c (+1/-0) libutouch-geis/geis.c (+35/-17) libutouch-geis/geis_test_api.h (+44/-0) libutouch-geis/geis_v1.c (+1/-0) python/_geis_bindings/_geis_bindings.c (+1/-0) testsuite/geis2/Makefile.am (+1/-1) testsuite/geis2/check_class.c (+2/-0) testsuite/geis2/check_config.c (+2/-0) testsuite/geis2/check_device.c (+2/-0) testsuite/geis2/check_filter.c (+1/-0) testsuite/geis2/check_frame.c (+1/-0) testsuite/geis2/check_geis_new.c (+2/-0) testsuite/geis2/check_region.c (+1/-0) testsuite/geis2/check_subscription.c (+1/-0) testsuite/geis2/gtest_devices.cpp (+51/-0) testsuite/gtest/gtest_geis_fixture.cpp (+9/-1) testsuite/gtest/gtest_geis_fixture.h (+5/-0) testsuite/libutouch-geis/check-c-compile.c (+1/-0) testsuite/libutouch-geis/check-cxx-compile.cpp (+2/-0) testsuite/libutouch-geis/check_backend_token.c (+3/-2) testsuite/libutouch-geis/check_filter.c (+2/-1) testsuite/libutouch-geis/check_geis_private.c (+3/-2) testsuite/libutouch-geis/check_region.c (+2/-1) testsuite/libutouch-geis/check_select_devices.c (+4/-2) testsuite/libutouch-geis/check_subscription.c (+2/-1) testsuite/libutouch-geis/check_timer.c (+2/-1) |
To merge this branch: | bzr merge lp:~bregma/geis/lp-904731 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Chase Douglas (community) | Approve | ||
Review via email:
|
Commit message
Description of the change
Adds a test case for bug lp:904731 (filters fail when matching devices are not present in the system), then adds a fix.
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'include/geis/geis.h' |
2 | --- include/geis/geis.h 2012-03-22 19:41:48 +0000 |
3 | +++ include/geis/geis.h 2012-03-25 21:39:39 +0000 |
4 | @@ -519,9 +519,6 @@ |
5 | * |
6 | * @{ |
7 | * |
8 | - * @def GEIS_INIT_UTOUCH_MOCK_BACKEND |
9 | - * Uses the "mock" back end for development testing. |
10 | - * |
11 | * @def GEIS_INIT_UTOUCH_DBUS_BACKEND |
12 | * Uses the DBus back end (default). |
13 | * |
14 | @@ -549,7 +546,6 @@ |
15 | * them. |
16 | */ |
17 | |
18 | -#define GEIS_INIT_UTOUCH_MOCK_BACKEND "com.canonical.utouch.backend.mock" |
19 | #define GEIS_INIT_UTOUCH_DBUS_BACKEND "com.canonical.utouch.backend.dbus" |
20 | #define GEIS_INIT_UTOUCH_GRAIL_BACKEND "com.canonical.utouch.backend.grail" |
21 | #define GEIS_INIT_UTOUCH_XCB_BACKEND "com.canonical.utouch.backend.xcb" |
22 | |
23 | === modified file 'libutouch-geis/backend/grail/geis_grail_backend.c' |
24 | --- libutouch-geis/backend/grail/geis_grail_backend.c 2012-03-23 01:23:12 +0000 |
25 | +++ libutouch-geis/backend/grail/geis_grail_backend.c 2012-03-25 21:39:39 +0000 |
26 | @@ -32,6 +32,7 @@ |
27 | #include "geis_group.h" |
28 | #include "geis_logging.h" |
29 | #include "geis_private.h" |
30 | +#include "geis_test_api.h" |
31 | #include "geis_touch.h" |
32 | #include "geis_ugsubscription_store.h" |
33 | #include "grail-types.h" |
34 | @@ -653,6 +654,16 @@ |
35 | { |
36 | UFStatus status; |
37 | |
38 | + GeisBoolean discard_device_messages = GEIS_FALSE; |
39 | + geis_get_configuration(gbe->geis, |
40 | + GEIS_CONFIG_DISCARD_DEVICE_MESSAGES, |
41 | + &discard_device_messages); |
42 | + if (discard_device_messages) |
43 | + { |
44 | + geis_debug("device message discarded because of configuration setting"); |
45 | + return; |
46 | + } |
47 | + |
48 | geis_bag_append(gbe->devices, &frame_device); |
49 | GeisInteger device_id = _grail_be_device_id_from_ufdevice(frame_device); |
50 | |
51 | @@ -744,6 +755,16 @@ |
52 | static void |
53 | _geis_grail_remove_device(GeisGrailBackend gbe, UFDevice frame_device) |
54 | { |
55 | + GeisBoolean discard_device_messages = GEIS_FALSE; |
56 | + geis_get_configuration(gbe->geis, |
57 | + GEIS_CONFIG_DISCARD_DEVICE_MESSAGES, |
58 | + &discard_device_messages); |
59 | + if (discard_device_messages) |
60 | + { |
61 | + geis_debug("device message discarded because of configuration setting"); |
62 | + return; |
63 | + } |
64 | + |
65 | for (GeisSize i = 0; i < geis_bag_count(gbe->devices); ++i) |
66 | { |
67 | UFDevice *device = geis_bag_at(gbe->devices, i); |
68 | @@ -1033,6 +1054,26 @@ |
69 | |
70 | |
71 | /** |
72 | + * Reports available filterable device attrs to the front end. |
73 | + */ |
74 | +static void |
75 | +_geis_grail_report_devices(GeisGrailBackend gbe) |
76 | +{ |
77 | + static struct GeisFilterableAttribute attrs[] = { |
78 | + { GEIS_DEVICE_ATTRIBUTE_NAME, GEIS_ATTR_TYPE_STRING, 0, NULL }, |
79 | + { GEIS_DEVICE_ATTRIBUTE_ID, GEIS_ATTR_TYPE_INTEGER, 0, NULL }, |
80 | + { GEIS_DEVICE_ATTRIBUTE_TOUCHES, GEIS_ATTR_TYPE_INTEGER, 0, NULL }, |
81 | + { GEIS_DEVICE_ATTRIBUTE_DIRECT_TOUCH, GEIS_ATTR_TYPE_BOOLEAN, 0, NULL }, |
82 | + { GEIS_DEVICE_ATTRIBUTE_INDEPENDENT_TOUCH, GEIS_ATTR_TYPE_BOOLEAN, 0, NULL }, |
83 | + }; |
84 | + static GeisSize attr_count = sizeof(attrs) |
85 | + / sizeof(struct GeisFilterableAttribute); |
86 | + |
87 | + geis_register_device(gbe->geis, NULL, attr_count, attrs); |
88 | +} |
89 | + |
90 | + |
91 | +/** |
92 | * Reports available gesture classes to the front end. |
93 | */ |
94 | static void |
95 | @@ -1177,6 +1218,7 @@ |
96 | GEIS_CONFIG_SEND_SYNCHRONOS_EVENTS, |
97 | &gbe->send_synchronous_events); |
98 | |
99 | + _geis_grail_report_devices(gbe); |
100 | _geis_grail_report_classes(gbe); |
101 | _geis_grail_report_regions(gbe); |
102 | _geis_grail_report_init_complete(gbe); |
103 | |
104 | === modified file 'libutouch-geis/backend/test_fixture/geis_backend_test_fixture.c' |
105 | --- libutouch-geis/backend/test_fixture/geis_backend_test_fixture.c 2012-03-06 15:22:02 +0000 |
106 | +++ libutouch-geis/backend/test_fixture/geis_backend_test_fixture.c 2012-03-25 21:39:39 +0000 |
107 | @@ -32,6 +32,7 @@ |
108 | #include "geis_logging.h" |
109 | #include "geis_private.h" |
110 | #include "geis_subscription.h" |
111 | +#include "geis_test_api.h" |
112 | #include "geis_touch.h" |
113 | #include <stdlib.h> |
114 | #include <string.h> |
115 | |
116 | === modified file 'libutouch-geis/geis.c' |
117 | --- libutouch-geis/geis.c 2012-03-13 16:44:03 +0000 |
118 | +++ libutouch-geis/geis.c 2012-03-25 21:39:39 +0000 |
119 | @@ -40,6 +40,7 @@ |
120 | #include "geis_event_queue.h" |
121 | #include "geis_gesture_flick.h" |
122 | #include "geis_logging.h" |
123 | +#include "geis_test_api.h" |
124 | #include <stdarg.h> |
125 | #include <string.h> |
126 | #include <sys/select.h> |
127 | @@ -115,6 +116,7 @@ |
128 | GeisBoolean use_atomic_gestures; |
129 | GeisBoolean send_tentative_events; |
130 | GeisBoolean send_synchronous_events; |
131 | + GeisBoolean ignore_device_events; |
132 | }; |
133 | |
134 | |
135 | @@ -498,6 +500,7 @@ |
136 | geis->use_atomic_gestures = GEIS_TRUE; |
137 | geis->send_tentative_events = GEIS_FALSE; |
138 | geis->send_synchronous_events = GEIS_FALSE; |
139 | + geis->ignore_device_events = GEIS_FALSE; |
140 | goto final_exit; |
141 | |
142 | unwind_region_attrs: |
143 | @@ -610,6 +613,10 @@ |
144 | } |
145 | back_end_type = BACK_END_TYPE_XCB; |
146 | } |
147 | + else if(0 == strcmp(init_arg_name, GEIS_CONFIG_DISCARD_DEVICE_MESSAGES)) |
148 | + { |
149 | + geis->ignore_device_events = GEIS_TRUE; |
150 | + } |
151 | |
152 | init_arg_name = va_arg(varargs, GeisString); |
153 | } |
154 | @@ -851,6 +858,12 @@ |
155 | status = GEIS_STATUS_SUCCESS; |
156 | } |
157 | |
158 | + else if (0 == strcmp(configuration_item_name, GEIS_CONFIG_DISCARD_DEVICE_MESSAGES)) |
159 | + { |
160 | + *(GeisBoolean*)configuration_item_value = geis->ignore_device_events; |
161 | + status = GEIS_STATUS_SUCCESS; |
162 | + } |
163 | + |
164 | return status; |
165 | } |
166 | |
167 | @@ -872,6 +885,12 @@ |
168 | max_events); |
169 | status = GEIS_STATUS_SUCCESS; |
170 | } |
171 | + else if (0 == strcmp(configuration_item_name, |
172 | + GEIS_CONFIG_DISCARD_DEVICE_MESSAGES)) |
173 | + { |
174 | + geis->ignore_device_events = *(GeisBoolean*)configuration_item_value; |
175 | + status = GEIS_STATUS_SUCCESS; |
176 | + } |
177 | return status; |
178 | } |
179 | |
180 | @@ -1151,29 +1170,28 @@ |
181 | GeisSize filterable_attr_count, |
182 | GeisFilterableAttribute filterable_attrs) |
183 | { |
184 | - GeisAttr attr = NULL; |
185 | - GeisEvent event = NULL; |
186 | - GeisSize i; |
187 | - |
188 | - geis_debug("registering device \"%s\" id %d", |
189 | - geis_device_name(device), |
190 | - geis_device_id(device)); |
191 | - |
192 | /* Add the filterable attributes. */ |
193 | - for (i = 0; i < filterable_attr_count; ++i) |
194 | + for (GeisSize i = 0; i < filterable_attr_count; ++i) |
195 | { |
196 | geis_filterable_attribute_bag_insert(geis->device_filterable_attributes, |
197 | &filterable_attrs[i]); |
198 | } |
199 | |
200 | - /* Add a "new device" event to the processing queue. */ |
201 | - event = geis_event_new(GEIS_EVENT_DEVICE_AVAILABLE); |
202 | - attr = geis_attr_new(GEIS_EVENT_ATTRIBUTE_DEVICE, |
203 | - GEIS_ATTR_TYPE_POINTER, |
204 | - device); |
205 | - |
206 | - geis_event_add_attr(event, attr); |
207 | - geis_post_event(geis, event); |
208 | + if (device) |
209 | + { |
210 | + geis_debug("registering device \"%s\" id %d", |
211 | + geis_device_name(device), |
212 | + geis_device_id(device)); |
213 | + |
214 | + /* Add a "new device" event to the processing queue. */ |
215 | + GeisEvent event = geis_event_new(GEIS_EVENT_DEVICE_AVAILABLE); |
216 | + GeisAttr attr = geis_attr_new(GEIS_EVENT_ATTRIBUTE_DEVICE, |
217 | + GEIS_ATTR_TYPE_POINTER, |
218 | + device); |
219 | + |
220 | + geis_event_add_attr(event, attr); |
221 | + geis_post_event(geis, event); |
222 | + } |
223 | } |
224 | |
225 | /* |
226 | |
227 | === added file 'libutouch-geis/geis_test_api.h' |
228 | --- libutouch-geis/geis_test_api.h 1970-01-01 00:00:00 +0000 |
229 | +++ libutouch-geis/geis_test_api.h 2012-03-25 21:39:39 +0000 |
230 | @@ -0,0 +1,44 @@ |
231 | +/** |
232 | + * @file geis_test_api.h |
233 | + * @brief internal interface of the GEIS test API |
234 | + * |
235 | + * This header exposes the GEIS internal test API for use in the GEIS test |
236 | + * suite. |
237 | + */ |
238 | + |
239 | +/* |
240 | + * Copyright 2012 Canonical Ltd. |
241 | + * |
242 | + * This library is free software; you can redistribute it and/or modify it under |
243 | + * the terms of the GNU Lesser General Public License as published by the Free |
244 | + * Software Foundation; either version 3 of the License, or (at your option) any |
245 | + * later version. |
246 | + * |
247 | + * This library is distributed in the hope that it will be useful, but WITHOUT |
248 | + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
249 | + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more |
250 | + * details. |
251 | + * |
252 | + * You should have received a copy of the GNU General Public License |
253 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
254 | + */ |
255 | +#ifndef GEIS_TEST_API_H_ |
256 | +#define GEIS_TEST_API_H_ |
257 | + |
258 | +/** |
259 | + * Back end to use in unit testing. |
260 | + */ |
261 | +#define GEIS_INIT_UTOUCH_MOCK_BACKEND "com.canonical.utouch.backend.mock" |
262 | + |
263 | +/** |
264 | + * Causes device messages to be discarded from back end. |
265 | + * |
266 | + * Argument is of tyep GeisBoolean. GEIS_TRUE means device messages will be |
267 | + * discarded, GEIS_FALSE means messages will not be discarded. |
268 | + * |
269 | + * This cofiguration option is intended to be used with various device-related |
270 | + * integration and unit tests. |
271 | + */ |
272 | +#define GEIS_CONFIG_DISCARD_DEVICE_MESSAGES "com.canonical.utouch.discard.device" |
273 | + |
274 | +#endif /* GEIS_TEST_API_H_ */ |
275 | |
276 | === modified file 'libutouch-geis/geis_v1.c' |
277 | --- libutouch-geis/geis_v1.c 2012-03-16 18:07:02 +0000 |
278 | +++ libutouch-geis/geis_v1.c 2012-03-25 21:39:39 +0000 |
279 | @@ -26,6 +26,7 @@ |
280 | #include "geis_logging.h" |
281 | #include "geis_private.h" |
282 | #include "geis_subscription.h" |
283 | +#include "geis_test_api.h" |
284 | #include <stdio.h> |
285 | #include <stdlib.h> |
286 | #include <string.h> |
287 | |
288 | === modified file 'python/_geis_bindings/_geis_bindings.c' |
289 | --- python/_geis_bindings/_geis_bindings.c 2012-02-21 15:40:10 +0000 |
290 | +++ python/_geis_bindings/_geis_bindings.c 2012-03-25 21:39:39 +0000 |
291 | @@ -1,6 +1,7 @@ |
292 | #include <Python.h> |
293 | |
294 | #include <geis/geis.h> |
295 | +#include "geis_test_api.h" |
296 | |
297 | |
298 | PyDoc_STRVAR(module_doc, |
299 | |
300 | === modified file 'testsuite/geis2/Makefile.am' |
301 | --- testsuite/geis2/Makefile.am 2012-03-21 15:02:49 +0000 |
302 | +++ testsuite/geis2/Makefile.am 2012-03-25 21:39:39 +0000 |
303 | @@ -35,7 +35,6 @@ |
304 | -Wno-unused -Wno-unused-function -Wno-unused-but-set-variable \ |
305 | -I$(top_srcdir) \ |
306 | -I$(top_srcdir)/include \ |
307 | - -I$(top_srcdir)/libutouch-geis \ |
308 | $(CHECK_CFLAGS) |
309 | |
310 | check_geis2_api_LDADD = \ |
311 | @@ -44,6 +43,7 @@ |
312 | |
313 | gtest_geis2_api_SOURCES = \ |
314 | gtest_attrs.cpp \ |
315 | + gtest_devices.cpp \ |
316 | gtest_subscriptions.cpp |
317 | |
318 | nodist_gtest_geis2_api_SOURCES = \ |
319 | |
320 | === modified file 'testsuite/geis2/check_class.c' |
321 | --- testsuite/geis2/check_class.c 2011-12-19 20:30:59 +0000 |
322 | +++ testsuite/geis2/check_class.c 2012-03-25 21:39:39 +0000 |
323 | @@ -4,6 +4,8 @@ |
324 | #include <check.h> |
325 | |
326 | #include <geis/geis.h> |
327 | +#include "libutouch-geis/geis_test_api.h" |
328 | + |
329 | |
330 | /* fixtures */ |
331 | static Geis g_geis; |
332 | |
333 | === modified file 'testsuite/geis2/check_config.c' |
334 | --- testsuite/geis2/check_config.c 2011-08-20 02:26:43 +0000 |
335 | +++ testsuite/geis2/check_config.c 2012-03-25 21:39:39 +0000 |
336 | @@ -4,6 +4,8 @@ |
337 | #include <check.h> |
338 | |
339 | #include "geis/geis.h" |
340 | +#include "libutouch-geis/geis_test_api.h" |
341 | + |
342 | |
343 | /* fixtures */ |
344 | static Geis geis; |
345 | |
346 | === modified file 'testsuite/geis2/check_device.c' |
347 | --- testsuite/geis2/check_device.c 2011-12-19 20:30:59 +0000 |
348 | +++ testsuite/geis2/check_device.c 2012-03-25 21:39:39 +0000 |
349 | @@ -4,6 +4,8 @@ |
350 | #include <check.h> |
351 | |
352 | #include <geis/geis.h> |
353 | +#include "libutouch-geis/geis_test_api.h" |
354 | + |
355 | |
356 | /* fixtures */ |
357 | static Geis g_geis; |
358 | |
359 | === modified file 'testsuite/geis2/check_filter.c' |
360 | --- testsuite/geis2/check_filter.c 2011-08-20 02:26:43 +0000 |
361 | +++ testsuite/geis2/check_filter.c 2012-03-25 21:39:39 +0000 |
362 | @@ -4,6 +4,7 @@ |
363 | #include <check.h> |
364 | |
365 | #include <geis/geis.h> |
366 | +#include "libutouch-geis/geis_test_api.h" |
367 | #include <string.h> |
368 | |
369 | |
370 | |
371 | === modified file 'testsuite/geis2/check_frame.c' |
372 | --- testsuite/geis2/check_frame.c 2011-12-19 20:30:59 +0000 |
373 | +++ testsuite/geis2/check_frame.c 2012-03-25 21:39:39 +0000 |
374 | @@ -4,6 +4,7 @@ |
375 | #include <check.h> |
376 | |
377 | #include <geis/geis.h> |
378 | +#include "libutouch-geis/geis_test_api.h" |
379 | #include <stdio.h> |
380 | |
381 | #define MAX_CLASS_COUNT 10 |
382 | |
383 | === modified file 'testsuite/geis2/check_geis_new.c' |
384 | --- testsuite/geis2/check_geis_new.c 2011-08-20 02:26:43 +0000 |
385 | +++ testsuite/geis2/check_geis_new.c 2012-03-25 21:39:39 +0000 |
386 | @@ -4,6 +4,8 @@ |
387 | #include <check.h> |
388 | |
389 | #include <geis/geis.h> |
390 | +#include "libutouch-geis/geis_test_api.h" |
391 | + |
392 | |
393 | /* compile-time test to ensure required init args are defined*/ |
394 | START_TEST(geis_init_args) |
395 | |
396 | === modified file 'testsuite/geis2/check_region.c' |
397 | --- testsuite/geis2/check_region.c 2011-08-20 02:26:43 +0000 |
398 | +++ testsuite/geis2/check_region.c 2012-03-25 21:39:39 +0000 |
399 | @@ -4,6 +4,7 @@ |
400 | #include <check.h> |
401 | |
402 | #include <geis/geis.h> |
403 | +#include "libutouch-geis/geis_test_api.h" |
404 | #include <string.h> |
405 | |
406 | |
407 | |
408 | === modified file 'testsuite/geis2/check_subscription.c' |
409 | --- testsuite/geis2/check_subscription.c 2011-08-20 02:26:43 +0000 |
410 | +++ testsuite/geis2/check_subscription.c 2012-03-25 21:39:39 +0000 |
411 | @@ -4,6 +4,7 @@ |
412 | #include <check.h> |
413 | |
414 | #include <geis/geis.h> |
415 | +#include "libutouch-geis/geis_test_api.h" |
416 | #include <string.h> |
417 | |
418 | |
419 | |
420 | === added file 'testsuite/geis2/gtest_devices.cpp' |
421 | --- testsuite/geis2/gtest_devices.cpp 1970-01-01 00:00:00 +0000 |
422 | +++ testsuite/geis2/gtest_devices.cpp 2012-03-25 21:39:39 +0000 |
423 | @@ -0,0 +1,51 @@ |
424 | +/** |
425 | + * GTEst test suite for GEIS v2 device handling. |
426 | + * |
427 | + * Copyright 2012 Canonical Ltd. |
428 | + */ |
429 | +#include "geis/geis.h" |
430 | +#include "libutouch-geis/geis_test_api.h" |
431 | +#include "gtest_geis_fixture.h" |
432 | + |
433 | + |
434 | +namespace |
435 | +{ |
436 | + |
437 | +/** |
438 | + * Fixture for testing device handling. |
439 | + * This is a separate class because gtest uses Java reflection. |
440 | + */ |
441 | +class GeisDeviceTests |
442 | +: public GTestGeisFixture |
443 | +{ |
444 | + void |
445 | + setup_geis() |
446 | + { |
447 | + geis_ = geis_new(GEIS_INIT_SYNCHRONOUS_START, |
448 | + GEIS_INIT_NO_ATOMIC_GESTURES, |
449 | + GEIS_CONFIG_DISCARD_DEVICE_MESSAGES, |
450 | + NULL); |
451 | + } |
452 | +}; |
453 | + |
454 | + |
455 | +TEST_F(GeisDeviceTests, filter_with_no_devices) |
456 | +{ |
457 | + GeisSubscription sub = geis_subscription_new(geis_, |
458 | + "no devices", |
459 | + GEIS_SUBSCRIPTION_NONE); |
460 | + EXPECT_TRUE(sub != NULL) << "can not create subscription"; |
461 | + GeisFilter filter = geis_filter_new(geis_, "rotate"); |
462 | + EXPECT_TRUE(filter != NULL) << "can not create filter"; |
463 | + |
464 | + GeisStatus fs = geis_filter_add_term(filter, |
465 | + GEIS_FILTER_DEVICE, |
466 | + GEIS_DEVICE_ATTRIBUTE_DIRECT_TOUCH, GEIS_FILTER_OP_EQ, GEIS_TRUE, |
467 | + NULL); |
468 | + EXPECT_EQ(fs, GEIS_STATUS_SUCCESS) << "can not add device filter"; |
469 | + |
470 | + geis_filter_delete(filter); |
471 | + geis_subscription_delete(sub); |
472 | +} |
473 | + |
474 | +} // anonymous namespace |
475 | |
476 | === modified file 'testsuite/gtest/gtest_geis_fixture.cpp' |
477 | --- testsuite/gtest/gtest_geis_fixture.cpp 2012-03-15 18:25:18 +0000 |
478 | +++ testsuite/gtest/gtest_geis_fixture.cpp 2012-03-25 21:39:39 +0000 |
479 | @@ -42,7 +42,8 @@ |
480 | ASSERT_GE(xi_major, 2); |
481 | ASSERT_GE(xi_minor, 2); |
482 | |
483 | - geis_ = geis_new(GEIS_INIT_SYNCHRONOUS_START, GEIS_INIT_NO_ATOMIC_GESTURES, NULL); |
484 | + setup_geis(); |
485 | + EXPECT_TRUE(NULL != geis_) << "could not create GEIS instance"; |
486 | } |
487 | |
488 | void GTestGeisFixture:: |
489 | @@ -62,3 +63,10 @@ |
490 | } |
491 | |
492 | |
493 | +void GTestGeisFixture:: |
494 | +setup_geis() |
495 | +{ |
496 | + geis_ = geis_new(GEIS_INIT_SYNCHRONOUS_START, |
497 | + GEIS_INIT_NO_ATOMIC_GESTURES, |
498 | + NULL); |
499 | +} |
500 | |
501 | === modified file 'testsuite/gtest/gtest_geis_fixture.h' |
502 | --- testsuite/gtest/gtest_geis_fixture.h 2012-03-15 18:25:18 +0000 |
503 | +++ testsuite/gtest/gtest_geis_fixture.h 2012-03-25 21:39:39 +0000 |
504 | @@ -41,6 +41,11 @@ |
505 | int |
506 | geis_fd(); |
507 | |
508 | +private: |
509 | + /** Setup of teh GEIS instance: override for special treatment. */ |
510 | + virtual void |
511 | + setup_geis(); |
512 | + |
513 | protected: |
514 | Geis geis_; |
515 | }; |
516 | |
517 | === modified file 'testsuite/libutouch-geis/check-c-compile.c' |
518 | --- testsuite/libutouch-geis/check-c-compile.c 2012-03-14 13:34:45 +0000 |
519 | +++ testsuite/libutouch-geis/check-c-compile.c 2012-03-25 21:39:39 +0000 |
520 | @@ -7,6 +7,7 @@ |
521 | #include <stdio.h> |
522 | |
523 | #include "geis_config.h" |
524 | +#include "geis_test_api.h" |
525 | |
526 | int main(int argc GEIS_UNUSED, char **argv GEIS_UNUSED) { |
527 | Geis g = geis_new(GEIS_INIT_UTOUCH_MOCK_BACKEND, NULL); |
528 | |
529 | === modified file 'testsuite/libutouch-geis/check-cxx-compile.cpp' |
530 | --- testsuite/libutouch-geis/check-cxx-compile.cpp 2012-03-14 13:34:45 +0000 |
531 | +++ testsuite/libutouch-geis/check-cxx-compile.cpp 2012-03-25 21:39:39 +0000 |
532 | @@ -7,6 +7,8 @@ |
533 | #include <stdio.h> |
534 | |
535 | #include "geis_config.h" |
536 | +#include "geis_test_api.h" |
537 | + |
538 | |
539 | int main(int argc GEIS_UNUSED, char **argv GEIS_UNUSED) { |
540 | Geis g = geis_new(GEIS_INIT_UTOUCH_MOCK_BACKEND, NULL); |
541 | |
542 | === modified file 'testsuite/libutouch-geis/check_backend_token.c' |
543 | --- testsuite/libutouch-geis/check_backend_token.c 2011-08-20 02:26:43 +0000 |
544 | +++ testsuite/libutouch-geis/check_backend_token.c 2012-03-25 21:39:39 +0000 |
545 | @@ -4,8 +4,9 @@ |
546 | #include <check.h> |
547 | |
548 | #include "geis/geis.h" |
549 | -#include "libutouch-geis/geis_backend_token.h" |
550 | -#include "libutouch-geis/geis_private.h" |
551 | +#include "geis_backend_token.h" |
552 | +#include "geis_private.h" |
553 | +#include "geis_test_api.h" |
554 | |
555 | |
556 | /* fixtures */ |
557 | |
558 | === modified file 'testsuite/libutouch-geis/check_filter.c' |
559 | --- testsuite/libutouch-geis/check_filter.c 2011-08-20 02:26:43 +0000 |
560 | +++ testsuite/libutouch-geis/check_filter.c 2012-03-25 21:39:39 +0000 |
561 | @@ -3,7 +3,8 @@ |
562 | */ |
563 | #include <check.h> |
564 | |
565 | -#include "libutouch-geis/geis_filter.h" |
566 | +#include "geis_filter.h" |
567 | +#include "geis_test_api.h" |
568 | #include <stdio.h> |
569 | |
570 | |
571 | |
572 | === modified file 'testsuite/libutouch-geis/check_geis_private.c' |
573 | --- testsuite/libutouch-geis/check_geis_private.c 2012-03-13 16:44:03 +0000 |
574 | +++ testsuite/libutouch-geis/check_geis_private.c 2012-03-25 21:39:39 +0000 |
575 | @@ -5,8 +5,9 @@ |
576 | |
577 | #include <errno.h> |
578 | #include "geis/geis.h" |
579 | -#include "libutouch-geis/geis_event.h" |
580 | -#include "libutouch-geis/geis_private.h" |
581 | +#include "geis_event.h" |
582 | +#include "geis_private.h" |
583 | +#include "geis_test_api.h" |
584 | #include <string.h> |
585 | #include <sys/select.h> |
586 | #include <unistd.h> |
587 | |
588 | === modified file 'testsuite/libutouch-geis/check_region.c' |
589 | --- testsuite/libutouch-geis/check_region.c 2011-08-20 02:26:43 +0000 |
590 | +++ testsuite/libutouch-geis/check_region.c 2012-03-25 21:39:39 +0000 |
591 | @@ -6,7 +6,8 @@ |
592 | #include <check.h> |
593 | |
594 | #include "geis/geis.h" |
595 | -#include "libutouch-geis/geis_region.h" |
596 | +#include "geis_test_api.h" |
597 | +#include "geis_region.h" |
598 | #include <stdio.h> |
599 | |
600 | |
601 | |
602 | === modified file 'testsuite/libutouch-geis/check_select_devices.c' |
603 | --- testsuite/libutouch-geis/check_select_devices.c 2012-01-25 19:05:48 +0000 |
604 | +++ testsuite/libutouch-geis/check_select_devices.c 2012-03-25 21:39:39 +0000 |
605 | @@ -3,8 +3,10 @@ |
606 | */ |
607 | #include <check.h> |
608 | |
609 | -#include "libutouch-geis/geis_attr.h" |
610 | -#include "libutouch-geis/geis_private.h" |
611 | +#include "geis_attr.h" |
612 | +#include "geis_private.h" |
613 | +#include "geis_test_api.h" |
614 | + |
615 | |
616 | static const char* device_1_name = "device 1"; |
617 | |
618 | |
619 | === modified file 'testsuite/libutouch-geis/check_subscription.c' |
620 | --- testsuite/libutouch-geis/check_subscription.c 2011-08-20 02:26:43 +0000 |
621 | +++ testsuite/libutouch-geis/check_subscription.c 2012-03-25 21:39:39 +0000 |
622 | @@ -4,7 +4,8 @@ |
623 | #include <check.h> |
624 | |
625 | #include "geis/geis.h" |
626 | -#include "libutouch-geis/geis_subscription.h" |
627 | +#include "geis_subscription.h" |
628 | +#include "geis_test_api.h" |
629 | #include <stdio.h> |
630 | |
631 | |
632 | |
633 | === modified file 'testsuite/libutouch-geis/check_timer.c' |
634 | --- testsuite/libutouch-geis/check_timer.c 2011-12-19 20:30:35 +0000 |
635 | +++ testsuite/libutouch-geis/check_timer.c 2012-03-25 21:39:39 +0000 |
636 | @@ -5,7 +5,8 @@ |
637 | |
638 | #include <check.h> |
639 | #include "geis/geis.h" |
640 | -#include "libutouch-geis/geis_timer.h" |
641 | +#include "geis_timer.h" |
642 | +#include "geis_test_api.h" |
643 | #include <stdio.h> |
644 | #include <sys/eventfd.h> |
645 | #include <sys/select.h> |
The way device attrs are registered feels a bit hackish, but it gets the job done. I'm fine with it.