tawasuyu

tawasuyu/taffy

A high performance rust-powered UI layout library

Rust 788HTML 740Markdown 12TOML 62536 Definiciones

⎇ d67e82255da07928c7e415ea7364529d204bbaf9 tests/generated/flex_shrink_to_zero.rs Rust · 75 líneas · 2.9 KB Historia Quién tocó qué crudo

Fix formatting d67e82255 · elbaro ·

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