Skip to content

Commit

Permalink
Implement client-server test infra and window opening tests
Browse files Browse the repository at this point in the history
These tests make a real Niri instance and real Wayland clients (via manual
wayland-rs implementation), both on the same event loop local to the test. This
allows testing the full Wayland interaction, including arbitrary event ordering
and delays.

To start off, add a massive powerset test for the settings that influence where
a window may open.
  • Loading branch information
YaLTeR committed Dec 22, 2024
1 parent 973e98c commit 334a6d9
Show file tree
Hide file tree
Showing 1,223 changed files with 18,132 additions and 1 deletion.
56 changes: 55 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -107,9 +107,12 @@ features = [

[dev-dependencies]
approx = "0.5.1"
calloop-wayland-source = "0.4.0"
insta.workspace = true
proptest = "1.5.0"
proptest-derive = { version = "0.5.0", features = ["boxed_union"] }
rayon = "1.10.0"
wayland-client = "0.31.7"
xshell = "0.2.6"

[features]
Expand Down
3 changes: 3 additions & 0 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,6 @@ pub mod pw_utils;

#[cfg(not(feature = "xdp-gnome-screencast"))]
pub use dummy_pw_utils as pw_utils;

#[cfg(test)]
mod tests;
Loading

0 comments on commit 334a6d9

Please sign in to comment.