D8776: [autotests] Add tests for DRM platform plugin

Martin Flöser noreply at phabricator.kde.org
Sun Nov 12 20:07:57 UTC 2017


graesslin created this revision.
graesslin added reviewers: KWin, Plasma.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.

REVISION 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.

BRANCH
  drm-autotests

REVISION DETAIL
  https://phabricator.kde.org/D8776

AFFECTED FILES
  autotests/CMakeLists.txt
  autotests/drm/CMakeLists.txt
  autotests/drm/mock_drm.cpp
  autotests/drm/mock_drm.h
  autotests/drm/objecttest.cpp
  cmake/modules/FindLibdrm.cmake
  plugins/platforms/drm/drm_backend.cpp
  plugins/platforms/drm/drm_buffer.cpp
  plugins/platforms/drm/drm_buffer.h
  plugins/platforms/drm/drm_buffer_gbm.cpp
  plugins/platforms/drm/drm_buffer_gbm.h
  plugins/platforms/drm/drm_object.cpp
  plugins/platforms/drm/drm_object.h
  plugins/platforms/drm/drm_object_connector.cpp
  plugins/platforms/drm/drm_object_connector.h
  plugins/platforms/drm/drm_object_crtc.cpp
  plugins/platforms/drm/drm_object_crtc.h
  plugins/platforms/drm/drm_object_plane.cpp
  plugins/platforms/drm/drm_object_plane.h

To: graesslin, #kwin, #plasma
Cc: plasma-devel, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20171112/9f81d906/attachment.html>


More information about the Plasma-devel mailing list