[PATCH v2 3/3] Add test for XIQueryPointer button mask when physical touch is active
Chase Douglas
chase.douglas at canonical.com
Tue May 15 16:58:15 PDT 2012
On 05/15/2012 04:36 PM, Peter Hutterer wrote:
> On Tue, May 15, 2012 at 11:05:27AM -0700, Chase Douglas wrote:
[snip]
>> diff --git a/test/integration/recordings/ntrig_dell_xt2/touch_1_begin.record b/test/integration/recordings/ntrig_dell_xt2/touch_1_begin.record
>> new file mode 100644
>> index 0000000..28a849b
>> --- /dev/null
>> +++ b/test/integration/recordings/ntrig_dell_xt2/touch_1_begin.record
>> @@ -0,0 +1,11 @@
>> +E: 1327542640.244087 0003 0000 2745
>> +E: 1327542640.244089 0003 0001 1639
>> +E: 1327542640.244090 0003 0035 2745
>> +E: 1327542640.244091 0003 0036 1639
>> +E: 1327542640.244092 0003 0034 0
>> +E: 1327542640.244093 0003 0030 468
>> +E: 1327542640.244094 0003 0031 306
>> +E: 1327542640.244095 0000 0002 0
>> +E: 1327542640.244251 0001 014d 1
>> +E: 1327542640.244251 0001 014a 1
>> +E: 1327542640.244253 0000 0000 0
>
> we need comment suspport in evemu so we can describe what events a file
> describes
Yeah, that would be helpful.
>> diff --git a/test/integration/recordings/ntrig_dell_xt2/touch_1_end.record b/test/integration/recordings/ntrig_dell_xt2/touch_1_end.record
>> new file mode 100644
>> index 0000000..cd6a9d9
>> --- /dev/null
>> +++ b/test/integration/recordings/ntrig_dell_xt2/touch_1_end.record
>> @@ -0,0 +1,3 @@
>> +E: 1327542642.244253 0001 014d 0
>> +E: 1327542642.244253 0001 014a 0
>> +E: 1327542642.244253 0000 0000 0
>> diff --git a/test/integration/xi2.cpp b/test/integration/xi2.cpp
>> index 68974a9..21305d3 100644
>> --- a/test/integration/xi2.cpp
>> +++ b/test/integration/xi2.cpp
>> @@ -192,3 +192,79 @@ protected:
>>
>> int xi2_opcode_;
>> };
>> +
>> +/**
>> + * XIQueryPointer for XInput 2.1 and earlier should report the first button
>> + * pressed if a touch is physically active. For XInput 2.2 and later clients,
>> + * the first button should not be reported.
>> + */
>> +TEST_P(XInput2Test, XIQueryPointerTouchscreen)
>> +{
>> + XIEventMask mask;
>> + mask.deviceid = XIAllDevices;
>> + mask.mask_len = XIMaskLen(XI_HierarchyChanged);
>> + mask.mask = reinterpret_cast<unsigned char*>(
>> + calloc(XIMaskLen(XI_HierarchyChanged), 1));
>> + XISetMask(mask.mask, XI_HierarchyChanged);
>> +
>> + ASSERT_EQ(Success,
>> + XISelectEvents(Display(), DefaultRootWindow(Display()), &mask,
>> + 1));
>> +
>> + mask.deviceid = XIAllMasterDevices;
>> + XIClearMask(mask.mask, XI_HierarchyChanged);
>> + XISetMask(mask.mask, XI_ButtonPress);
>> +
>> + ASSERT_EQ(Success,
>> + XISelectEvents(Display(), DefaultRootWindow(Display()), &mask,
>> + 1));
>> +
>> + free(mask.mask);
>> +
>> + XFlush(Display());
>> +
>> + xorg::testing::evemu::Device device(
>> + TEST_ROOT_DIR "recordings/ntrig_dell_xt2/device.prop");
>> +
>> + ASSERT_TRUE(wait_for_device(Display(),
>> + "N-Trig MultiTouch (Virtual Test Device)"));
>> +
>> + device.Play(TEST_ROOT_DIR "recordings/ntrig_dell_xt2/touch_1_begin.record");
>
> having the coding style mix between wait_for_device() and device.Play() makes
> me sad. can we agree on one style for xorg-gtest related stuff?
Hmm? I don't understand how the style is different between the two.
-- Chase
More information about the xorg-devel
mailing list