tawasuyu

tawasuyu/taffy

A high performance rust-powered UI layout library

HTML 5464Rust 87Markdown 12TOML 91903 Sutichaykuna

⎇ bce89b1006f36ce35abfaf1f1c2b3dd95f3dffd3 tests/generated/align_baseline_nested_child.rs Rust · 75 siq'ikuna · 3.0 KB Ñawpa willay Pi imata llamkarqan ch'uya

index: update tests to API changes 48c69198a · msiglreith ·

1#[test]
2fn align_baseline_nested_child() {
3    let mut stretch = stretch::Stretch::new();
4    let node0 = stretch
5        .new_node(
6            stretch::style::Style {
7                size: stretch::geometry::Size {
8                    width: stretch::style::Dimension::Points(50f32),
9                    height: stretch::style::Dimension::Points(50f32),
10                    ..Default::default()
11                },
12                ..Default::default()
13            },
14            vec![],
15        )
16        .unwrap();
17    let node10 = stretch
18        .new_node(
19            stretch::style::Style {
20                size: stretch::geometry::Size {
21                    width: stretch::style::Dimension::Points(50f32),
22                    height: stretch::style::Dimension::Points(10f32),
23                    ..Default::default()
24                },
25                ..Default::default()
26            },
27            vec![],
28        )
29        .unwrap();
30    let node1 = stretch
31        .new_node(
32            stretch::style::Style {
33                flex_direction: stretch::style::FlexDirection::Column,
34                size: stretch::geometry::Size {
35                    width: stretch::style::Dimension::Points(50f32),
36                    height: stretch::style::Dimension::Points(20f32),
37                    ..Default::default()
38                },
39                ..Default::default()
40            },
41            vec![node10],
42        )
43        .unwrap();
44    let node = stretch
45        .new_node(
46            stretch::style::Style {
47                align_items: stretch::style::AlignItems::Baseline,
48                size: stretch::geometry::Size {
49                    width: stretch::style::Dimension::Points(100f32),
50                    height: stretch::style::Dimension::Points(100f32),
51                    ..Default::default()
52                },
53                ..Default::default()
54            },
55            vec![node0, node1],
56        )
57        .unwrap();
58    stretch.compute_layout(node, stretch::geometry::Size::undefined()).unwrap();
59    assert_eq!(stretch.layout(node).unwrap().size.width, 100f32);
60    assert_eq!(stretch.layout(node).unwrap().size.height, 100f32);
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, 50f32);
68    assert_eq!(stretch.layout(node1).unwrap().size.height, 20f32);
69    assert_eq!(stretch.layout(node1).unwrap().location.x, 50f32);
70    assert_eq!(stretch.layout(node1).unwrap().location.y, 40f32);
71    assert_eq!(stretch.layout(node10).unwrap().size.width, 50f32);
72    assert_eq!(stretch.layout(node10).unwrap().size.height, 10f32);
73    assert_eq!(stretch.layout(node10).unwrap().location.x, 0f32);
74    assert_eq!(stretch.layout(node10).unwrap().location.y, 0f32);
75}