openpencil/crates/op-host-native/tests/paint_order.rs

42 lines
1.3 KiB
Rust

#[test]
fn canvas_paints_before_property_panel_overlays() {
let source = std::fs::read_to_string(format!(
"{}/src/widget_host/paint.rs",
env!("CARGO_MANIFEST_DIR")
))
.expect("paint source is readable");
let canvas = source
.find("CanvasViewport — middle band")
.expect("canvas paint block marker exists");
let property = source
.find("PropertyPanel — only when selection")
.expect("property panel paint block marker exists");
assert!(
canvas < property,
"PropertyPanel must paint after CanvasViewport so popovers extending into the canvas are not covered"
);
}
#[test]
fn image_fill_popover_paints_above_status_bar() {
let source = std::fs::read_to_string(format!(
"{}/src/widget_host/paint.rs",
env!("CARGO_MANIFEST_DIR")
))
.expect("paint source is readable");
let status = source
.find("StatusBar — floating bottom-right")
.expect("status paint block marker exists");
let overlays = source
.find("PropertyPanel overlays")
.expect("property overlay paint block marker exists");
assert!(
status < overlays,
"image-fill popover must paint after StatusBar so the zoom pill cannot cover adjustment rows"
);
}