-
Committer:
Bastien Nocera
-
Author(s):
Martin Pitt
-
Date:
2013-01-07 09:41:18 UTC
-
Revision ID:
git-v1:005f73673074da4ffdff8945a1ecf5b32c69180e
Add support for plugin tests
Add a GSDTestCase Python class (tests/gsdtestcase.py) which provides
functionality for writing daemon and plugin tests:
* Launch temporary private session and system D-BUSes to avoid disturbing
the currently running system and being able to use mock D-BUS services.
* Run a minimal gnome-session to ensure plugins can check the session idle
status, register to the session, etc.
* Configure temporary local XDG directories to avoid disturbing the user's
real settings and files.
* Run a mock notification daemon to avoid showing notifications produced
by test cases, using python-dbusmock.
(http://pypi.python.org/pypi/python-dbusmock)
* Provide API to start/stop a mock logind, using python-dbusmock.
* Provide API to reste the session idle timer, using a small "shiftkey"
helper program that sends a "left shift key" event through XTest.
If any of the required dependencies (gnome-session, dbusmock, pygobject) is
not present, it exits with an error message and exit code 0, to avoid
breaking tests in minimal build environments.
https://bugzilla.gnome.org/show_bug.cgi?id=685951