[librsvg: 10/38] WIP: Add a failing test for obtaining geometries with an offsetted viewport




commit cfd0127c21fb1bf332d444abf0fcbb65693e610a
Author: Federico Mena Quintero <federico gnome org>
Date:   Fri Jun 19 20:41:14 2020 -0500

    WIP: Add a failing test for obtaining geometries with an offsetted viewport
    
    This is for https://gitlab.gnome.org/GNOME/librsvg/-/issues/554

 librsvg_crate/tests/intrinsic_dimensions.rs | 31 +++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)
---
diff --git a/librsvg_crate/tests/intrinsic_dimensions.rs b/librsvg_crate/tests/intrinsic_dimensions.rs
index 5eaea94a..a4a3fb2d 100644
--- a/librsvg_crate/tests/intrinsic_dimensions.rs
+++ b/librsvg_crate/tests/intrinsic_dimensions.rs
@@ -81,6 +81,37 @@ fn root_geometry_with_percent_viewport() {
     assert_eq!((ink_r, logical_r), (rect, rect));
 }
 
+#[test]
+fn root_geometry_with_percent_viewport_with_offset() {
+    let svg = load_svg(
+        br#"<?xml version="1.0" encoding="UTF-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"; width="100%" height="100%">
+  <rect x="10" y="20" width="30" height="40"/>
+</svg>
+"#,
+    );
+
+    let renderer = CairoRenderer::new(&svg);
+
+    let viewport = cairo::Rectangle {
+        x: 100.0,
+        y: 100.0,
+        width: 100.0,
+        height: 100.0,
+    };
+
+    let (ink_r, logical_r) = renderer.geometry_for_layer(None, &viewport).unwrap();
+
+    let rect = cairo::Rectangle {
+        x: 110.0,
+        y: 120.0,
+        width: 30.0,
+        height: 40.0,
+    };
+
+    assert_eq!((ink_r, logical_r), (rect, rect));
+}
+
 #[test]
 fn layer_geometry_with_percent_viewport() {
     let svg = load_svg(


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]