Skip to content
  • Martin Flöser's avatar
    [autotests] Add tests for DRM platform plugin · d4ba05a2
    Martin Flöser authored
    Summary:
    The addition of the test infrastructure is motivated by the regressions
    caused by adding mode switching and transformation support.
    A contributing factor to these regression is the fact that the DRM
    platform does not have any tests. It is difficult to test this code as
    it needs to work with hardware, thus we cannot use the real DRM library.
    Instead we need to use mocking.
    
    This change sets up some first basic tests with the help of a mockDrm
    library. In order to better test the code as units the Drm classes are
    slightly refactored. Most importantly the dependency to DrmBackend is
    removed wherever possible and replaced by a simple int fd which is mostly
    the only element used by the classes.
    
    This first test introduces basic testing of a DrmObject. It is intended
    to extend this to at least also test DrmPlane as a central piece of our
    Drm platform plugin. This will also extend the tests of DrmObject.
    
    Reviewers: #kwin, #plasma
    
    Subscribers: plasma-devel
    
    Tags: #plasma
    
    Differential Revision: https://phabricator.kde.org/D8776
    d4ba05a2