tawasuyu

tawasuyu/taffy

A high performance rust-powered UI layout library

Rust 500HTML 254C 19JavaScript 81407 Definitions

⎇ 39cd0fcbbda7cd38cc6316e7339b1f3aed29e99f tests/generated/justify_content_overflow_min_max.rs Rust · 81 lines · 3.2 KB History Who touched what raw

Rename `new_node` to `new_with_children` (#142) 5d00d8fb9 · Andreas Weibye ·

1#[test]
2fn justify_content_overflow_min_max() {
3    let mut taffy = taffy::Taffy::new();
4    let node0 = taffy
5        .new_with_children(
6            taffy::style::FlexboxLayout {
7                flex_shrink: 0f32,
8                size: taffy::geometry::Size {
9                    width: taffy::style::Dimension::Points(50f32),
10                    height: taffy::style::Dimension::Points(50f32),
11                    ..Default::default()
12                },
13                ..Default::default()
14            },
15            &[],
16        )
17        .unwrap();
18    let node1 = taffy
19        .new_with_children(
20            taffy::style::FlexboxLayout {
21                flex_shrink: 0f32,
22                size: taffy::geometry::Size {
23                    width: taffy::style::Dimension::Points(50f32),
24                    height: taffy::style::Dimension::Points(50f32),
25                    ..Default::default()
26                },
27                ..Default::default()
28            },
29            &[],
30        )
31        .unwrap();
32    let node2 = taffy
33        .new_with_children(
34            taffy::style::FlexboxLayout {
35                flex_shrink: 0f32,
36                size: taffy::geometry::Size {
37                    width: taffy::style::Dimension::Points(50f32),
38                    height: taffy::style::Dimension::Points(50f32),
39                    ..Default::default()
40                },
41                ..Default::default()
42            },
43            &[],
44        )
45        .unwrap();
46    let node = taffy
47        .new_with_children(
48            taffy::style::FlexboxLayout {
49                flex_direction: taffy::style::FlexDirection::Column,
50                justify_content: taffy::style::JustifyContent::Center,
51                min_size: taffy::geometry::Size {
52                    height: taffy::style::Dimension::Points(100f32),
53                    ..Default::default()
54                },
55                max_size: taffy::geometry::Size {
56                    height: taffy::style::Dimension::Points(110f32),
57                    ..Default::default()
58                },
59                ..Default::default()
60            },
61            &[node0, node1, node2],
62        )
63        .unwrap();
64    taffy.compute_layout(node, taffy::geometry::Size::undefined()).unwrap();
65    assert_eq!(taffy.layout(node).unwrap().size.width, 50f32);
66    assert_eq!(taffy.layout(node).unwrap().size.height, 110f32);
67    assert_eq!(taffy.layout(node).unwrap().location.x, 0f32);
68    assert_eq!(taffy.layout(node).unwrap().location.y, 0f32);
69    assert_eq!(taffy.layout(node0).unwrap().size.width, 50f32);
70    assert_eq!(taffy.layout(node0).unwrap().size.height, 50f32);
71    assert_eq!(taffy.layout(node0).unwrap().location.x, 0f32);
72    assert_eq!(taffy.layout(node0).unwrap().location.y, -20f32);
73    assert_eq!(taffy.layout(node1).unwrap().size.width, 50f32);
74    assert_eq!(taffy.layout(node1).unwrap().size.height, 50f32);
75    assert_eq!(taffy.layout(node1).unwrap().location.x, 0f32);
76    assert_eq!(taffy.layout(node1).unwrap().location.y, 30f32);
77    assert_eq!(taffy.layout(node2).unwrap().size.width, 50f32);
78    assert_eq!(taffy.layout(node2).unwrap().size.height, 50f32);
79    assert_eq!(taffy.layout(node2).unwrap().location.x, 0f32);
80    assert_eq!(taffy.layout(node2).unwrap().location.y, 80f32);
81}