tawasuyu

tawasuyu/taffy

A high performance rust-powered UI layout library

Rust 1085HTML 1017Markdown 12TOML 84234 Sutichaykuna

⎇ a9acf58cd4179aba3230ea7abd27003dc445c034 tests/generated/margin_auto_mutiple_children_row.rs Rust · 60 siq'ikuna · 2.7 KB Ñawpa willay Pi imata llamkarqan ch'uya

[gentest] Refactor gentest to use WebDriver & quote crate. a9acf58cd · Adam Perry ·

1#[test]
2fn margin_auto_mutiple_children_row() {
3    let layout = stretch::compute(
4        &stretch::style::Node {
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            children: vec![
12                stretch::style::Node {
13                    size: stretch::geometry::Size {
14                        width: stretch::style::Dimension::Points(50f32),
15                        height: stretch::style::Dimension::Points(50f32),
16                        ..Default::default()
17                    },
18                    margin: stretch::geometry::Rect { end: stretch::style::Dimension::Auto, ..Default::default() },
19                    ..Default::default()
20                },
21                stretch::style::Node {
22                    size: stretch::geometry::Size {
23                        width: stretch::style::Dimension::Points(50f32),
24                        height: stretch::style::Dimension::Points(50f32),
25                        ..Default::default()
26                    },
27                    margin: stretch::geometry::Rect { end: stretch::style::Dimension::Auto, ..Default::default() },
28                    ..Default::default()
29                },
30                stretch::style::Node {
31                    size: stretch::geometry::Size {
32                        width: stretch::style::Dimension::Points(50f32),
33                        height: stretch::style::Dimension::Points(50f32),
34                        ..Default::default()
35                    },
36                    ..Default::default()
37                },
38            ],
39            ..Default::default()
40        },
41        stretch::geometry::Size::undefined(),
42    )
43    .unwrap();
44    assert_eq!(layout.size.width, 200f32);
45    assert_eq!(layout.size.height, 200f32);
46    assert_eq!(layout.location.x, 0f32);
47    assert_eq!(layout.location.y, 0f32);
48    assert_eq!(layout.children[0usize].size.width, 50f32);
49    assert_eq!(layout.children[0usize].size.height, 50f32);
50    assert_eq!(layout.children[0usize].location.x, 0f32);
51    assert_eq!(layout.children[0usize].location.y, 75f32);
52    assert_eq!(layout.children[1usize].size.width, 50f32);
53    assert_eq!(layout.children[1usize].size.height, 50f32);
54    assert_eq!(layout.children[1usize].location.x, 75f32);
55    assert_eq!(layout.children[1usize].location.y, 75f32);
56    assert_eq!(layout.children[2usize].size.width, 50f32);
57    assert_eq!(layout.children[2usize].size.height, 50f32);
58    assert_eq!(layout.children[2usize].location.x, 150f32);
59    assert_eq!(layout.children[2usize].location.y, 75f32);
60}