补充径向填充前后端一致性测试
覆盖 Radial90 四个角点的顺时针与逆时针部分填充 锁定编辑器预览与 Rust 导出共享起始角约定
This commit is contained in:
+31
-1
@@ -124,7 +124,7 @@ fn fill_clip_path(method: &FillMethod, amount: f32) -> Option<String> {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::{fill_clip_path, FillMethod, Radial180Origin, Radial360Origin};
|
||||
use super::{fill_clip_path, FillMethod, Radial180Origin, Radial360Origin, Radial90Origin};
|
||||
|
||||
#[test]
|
||||
fn clockwise_radial_180_and_360_start_ninety_degrees_before_origin() {
|
||||
@@ -160,6 +160,36 @@ mod tests {
|
||||
.unwrap();
|
||||
assert!(radial_180.contains("from -90deg"));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn radial_90_matches_preview_for_all_origins_and_directions() {
|
||||
let cases = [
|
||||
(Radial90Origin::TopLeft, 0.0),
|
||||
(Radial90Origin::TopRight, 90.0),
|
||||
(Radial90Origin::BottomRight, 180.0),
|
||||
(Radial90Origin::BottomLeft, 270.0),
|
||||
];
|
||||
for (origin, angle) in cases {
|
||||
let clockwise = fill_clip_path(
|
||||
&FillMethod::Radial90 {
|
||||
origin,
|
||||
clockwise: true,
|
||||
},
|
||||
0.5,
|
||||
)
|
||||
.unwrap();
|
||||
let counter_clockwise = fill_clip_path(
|
||||
&FillMethod::Radial90 {
|
||||
origin,
|
||||
clockwise: false,
|
||||
},
|
||||
0.5,
|
||||
)
|
||||
.unwrap();
|
||||
assert!(clockwise.contains(&format!("from {}deg", angle - 90.0)));
|
||||
assert!(counter_clockwise.contains(&format!("from {}deg", angle - 45.0)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn conic_mask(origin: f32, clockwise: bool, amount: f32, max_sweep: f32) -> String {
|
||||
|
||||
Reference in New Issue
Block a user