mirror of
https://github.com/storytold/designcraft.git
synced 2026-10-28 20:26:57 -06:00
Integration: #812's test (overset preflight names the page of a frame in a moved group)
This commit is contained in:
@@ -451,3 +451,29 @@ mod mojikumi_nested_tests {
|
||||
assert_eq!(issues.iter().filter(|i| i.kind == "unsupportedTypography" && i.message.contains("Unrecognized")).count(), 1);
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod overset_page_tests {
|
||||
use serde_json::json;
|
||||
|
||||
use crate::Session;
|
||||
|
||||
/// An overset frame inside a group moved onto the right-hand page was reported on the left one.
|
||||
#[test]
|
||||
fn overset_frame_in_a_moved_group_names_its_displayed_page() {
|
||||
let mut s = Session::new();
|
||||
s.execute("file.new", &json!({"facingPages": true, "pages": 3, "width": 612, "height": 792})).unwrap();
|
||||
let frame = json!({"spread": 1, "rect": [72, 72, 140, 100], "content": "text", "text": "overflowing words ".repeat(100)});
|
||||
let a = s.execute("frame.create", &frame).unwrap()["id"].as_u64().unwrap();
|
||||
let b = s.execute("frame.create", &json!({"spread": 1, "rect": [300, 300, 350, 350]})).unwrap()["id"].as_u64().unwrap();
|
||||
let g = s.execute("object.group", &json!({"ids": [a, b]})).unwrap()["id"].as_u64().unwrap();
|
||||
let overset_page = |s: &mut Session| {
|
||||
let r = s.execute("preflight.run", &json!({})).unwrap();
|
||||
let issue = r["issues"].as_array().unwrap().iter().find(|i| i["kind"] == "overset").unwrap().clone();
|
||||
issue["page"].as_u64().unwrap()
|
||||
};
|
||||
assert_eq!(overset_page(&mut s), 1);
|
||||
s.execute("transform.move", &json!({"dx": 612, "dy": 0, "ids": [g]})).unwrap();
|
||||
assert_eq!(overset_page(&mut s), 2);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user