Skip to content

Introducing NixOS end-to-end test framework#1141

Open
Thesola10 wants to merge 15 commits intodevelopfrom
unit-tests
Open

Introducing NixOS end-to-end test framework#1141
Thesola10 wants to merge 15 commits intodevelopfrom
unit-tests

Conversation

@Thesola10
Copy link
Copy Markdown
Collaborator

@Thesola10 Thesola10 commented Mar 13, 2026

The time has finally come! This system should allow interactive tests by simulating the mouse and keyboard and comparing against screenshots (and maybe also ensure GNOME hasn't crashed).

Also fixes #91 and #1098

To-do list:

  • Wire Behave into NixOS test system
  • Play back input devices using libinput
  • Run GJS code within GNOME Shell
  • Wait until PaperWM has finished loading
  • Take screenshots using OpenCV
  • Produce test report artifact with screenshots attached
  • Extract useful information such as window positions from OpenCV
  • Write a complete, meaningful test
  • Stretch goal: obtain coverage data

@Thesola10 Thesola10 force-pushed the unit-tests branch 2 times, most recently from 67b786f to 8d1bd2e Compare March 13, 2026 03:11
The time has finally come! This system should allow interactive tests
by simulating the mouse and keyboard and comparing against screenshots
(and maybe also ensure GNOME hasn't crashed).
@Thesola10
Copy link
Copy Markdown
Collaborator Author

I'd love to introduce code coverage as well as GJS seems to support it but with GNOME being welded together I can't even begin to figure out how to use it right now.

@Thesola10 Thesola10 self-assigned this Mar 19, 2026
@Thesola10 Thesola10 added stability Work towards making PaperWM more reliable project support Issues related to supporting or improving the project enhancement Adds a new feature or extends scope labels Mar 19, 2026
@Thesola10 Thesola10 force-pushed the unit-tests branch 2 times, most recently from 9f5cfac to b6288d8 Compare March 24, 2026 13:31
@Thesola10 Thesola10 marked this pull request as ready for review March 24, 2026 13:42
@Thesola10
Copy link
Copy Markdown
Collaborator Author

I think I'll merge this once the test functions all work and start implementing the tests themselves in a separate PR.

@Thesola10 Thesola10 force-pushed the unit-tests branch 2 times, most recently from 9673ee3 to 7a09dd4 Compare March 25, 2026 07:21
@Thesola10 Thesola10 force-pushed the unit-tests branch 4 times, most recently from 9b8331b to 914791d Compare March 25, 2026 07:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Adds a new feature or extends scope project support Issues related to supporting or improving the project stability Work towards making PaperWM more reliable

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Integration testing under "fake" GNOME instance on github CI Add testing

1 participant