Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.41 KB

development.rst

File metadata and controls

43 lines (30 loc) · 1.41 KB

Developing Qtile

Using Xephyr and the test suite

Qtile has a very extensive test suite, using the Xephyr nested X server. When tests are run, a nested X server with a nested instance of Qtile is fired up, and then tests interact with the Qtile instance through the client API. The fact that we can do this is a great demonstration of just how completely scriptable Qtile is. In fact, Qtile is designed expressly to be scriptable enough to allow unit testing in a nested environment.

The Qtile repo includes a tiny helper script to let you quickly pull up a nested instance instance of Qtile in Xephyr, using your current configuration. Run it from the top-level of the repository, like this:

./test/scripts/xephyr                      

In practice, the development cycle looks something like this:

  1. Make minor code change
  2. Run appropriate tests using nosetests
  3. GOTO 1, until hackage is complete
  4. Run entire test suite
  5. Commit

Resources

Here are a number of resources that may come in handy: