[PATCH xorg-gtest 5/5] Add xorg::testing::evemu::{Device, Recording}

Chase Douglas chase.douglas at canonical.com
Mon Mar 5 21:39:45 PST 2012


On 03/05/2012 06:25 PM, Stephen M. Webb wrote:
> On 03/05/2012 02:47 PM, Chase Douglas wrote:
>> These new classes use utouch-evemu for input device recording playback.
>>
>> Signed-off-by: Chase Douglas<chase.douglas at canonical.com>
>> ---
>>    configure.ac                         |   13 +++++
>>    include/Makefile.am                  |    6 ++
>>    include/xorg/gtest/evemu/device.h    |   85 ++++++++++++++++++++++++++++++++
>>    include/xorg/gtest/evemu/recording.h |   89 ++++++++++++++++++++++++++++++++++
>>    src/Makefile.am                      |    8 +++
>>    src/device.cpp                       |   84 ++++++++++++++++++++++++++++++++
>>    src/recording.cpp                    |   51 +++++++++++++++++++
>
> I find it a little unusual that the recording and playback operations
> are a separate object than the device they operate on.

Usually, a test instantiates a device and plays back one recording. 
However, it's conceivable that a test would instantiate one device and 
play back two separate recordings in sequence. Or one recording twice. 
Or one recording through two separate devices. The idea here is to 
create a wrapper object around the devices and the recordings separately 
so they can be interchanged.

There's no real runtime overhead, and code wise there shouldn't be much 
overhead. The code is as simple as:

Device device("device.prop");
Recording recording("device.recording");
recording.playback(device);

As I'm typing this I'm realizing that the API doesn't really allow for 
one recording, multiple devices (without having to instantiate two 
recording objects). I'll think about refactoring it a little.

Thanks,

-- Chase


More information about the xorg-devel mailing list