gioser

tawasuyu/taffy

A high performance rust-powered UI layout library

Rust 1090HTML 1022Markdown 12TOML 84418 Definiciones

⎇ 9950fe891998e1d08e8b79ce5cc6320efda0941f tests/generated/margin_auto_mutiple_children_row.rs Rust · 69 líneas · 2.9 KB Historia Quién tocó qué crudo

update tests and benchmarks to use new api 1f8c44154 · Emil Sjölander ·

1#[test]
2fn margin_auto_mutiple_children_row() {
3    let layout = stretch::node::Node::new(
4        stretch::style::Style {
5            align_items: stretch::style::AlignItems::Center,
6            size: stretch::geometry::Size {
7                width: stretch::style::Dimension::Points(200f32),
8                height: stretch::style::Dimension::Points(200f32),
9                ..Default::default()
10            },
11            ..Default::default()
12        },
13        vec![
14            &stretch::node::Node::new(
15                stretch::style::Style {
16                    size: stretch::geometry::Size {
17                        width: stretch::style::Dimension::Points(50f32),
18                        height: stretch::style::Dimension::Points(50f32),
19                        ..Default::default()
20                    },
21                    margin: stretch::geometry::Rect { end: stretch::style::Dimension::Auto, ..Default::default() },
22                    ..Default::default()
23                },
24                vec![],
25            ),
26            &stretch::node::Node::new(
27                stretch::style::Style {
28                    size: stretch::geometry::Size {
29                        width: stretch::style::Dimension::Points(50f32),
30                        height: stretch::style::Dimension::Points(50f32),
31                        ..Default::default()
32                    },
33                    margin: stretch::geometry::Rect { end: stretch::style::Dimension::Auto, ..Default::default() },
34                    ..Default::default()
35                },
36                vec![],
37            ),
38            &stretch::node::Node::new(
39                stretch::style::Style {
40                    size: stretch::geometry::Size {
41                        width: stretch::style::Dimension::Points(50f32),
42                        height: stretch::style::Dimension::Points(50f32),
43                        ..Default::default()
44                    },
45                    ..Default::default()
46                },
47                vec![],
48            ),
49        ],
50    )
51    .compute_layout(stretch::geometry::Size::undefined())
52    .unwrap();
53    assert_eq!(layout.size.width, 200f32);
54    assert_eq!(layout.size.height, 200f32);
55    assert_eq!(layout.location.x, 0f32);
56    assert_eq!(layout.location.y, 0f32);
57    assert_eq!(layout.children[0usize].size.width, 50f32);
58    assert_eq!(layout.children[0usize].size.height, 50f32);
59    assert_eq!(layout.children[0usize].location.x, 0f32);
60    assert_eq!(layout.children[0usize].location.y, 75f32);
61    assert_eq!(layout.children[1usize].size.width, 50f32);
62    assert_eq!(layout.children[1usize].size.height, 50f32);
63    assert_eq!(layout.children[1usize].location.x, 75f32);
64    assert_eq!(layout.children[1usize].location.y, 75f32);
65    assert_eq!(layout.children[2usize].size.width, 50f32);
66    assert_eq!(layout.children[2usize].size.height, 50f32);
67    assert_eq!(layout.children[2usize].location.x, 150f32);
68    assert_eq!(layout.children[2usize].location.y, 75f32);
69}