diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2024-12-04 22:08:47 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2024-12-07 19:38:48 +0300 |
| commit | 396089ef0e9c8722876d5ed870021ddbce4ae31f (patch) | |
| tree | cd166e326ccfdbd473741cae9473a313006117e4 /src/layout/tile.rs | |
| parent | df98b5021db6dc4a6d776da8ba8884f4290a2584 (diff) | |
| download | niri-396089ef0e9c8722876d5ed870021ddbce4ae31f.tar.gz niri-396089ef0e9c8722876d5ed870021ddbce4ae31f.tar.bz2 niri-396089ef0e9c8722876d5ed870021ddbce4ae31f.zip | |
layout: Extract Tile::verify_invariants()
Diffstat (limited to 'src/layout/tile.rs')
| -rw-r--r-- | src/layout/tile.rs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/layout/tile.rs b/src/layout/tile.rs index 6646999f..83080870 100644 --- a/src/layout/tile.rs +++ b/src/layout/tile.rs @@ -922,4 +922,15 @@ impl<W: LayoutElement> Tile<W> { pub fn take_unmap_snapshot(&mut self) -> Option<TileRenderSnapshot> { self.unmap_snapshot.take() } + + #[cfg(test)] + pub fn verify_invariants(&self) { + use approx::assert_abs_diff_eq; + + let scale = self.scale; + let size = self.tile_size(); + let rounded = size.to_physical_precise_round(scale).to_logical(scale); + assert_abs_diff_eq!(size.w, rounded.w, epsilon = 1e-5); + assert_abs_diff_eq!(size.h, rounded.h, epsilon = 1e-5); + } } |
