tawasuyu

tawasuyu/taffy

A high performance rust-powered UI layout library

HTML 231Rust 9TOML 3CSS 1345 Definitions

⎇ a9acf58cd4179aba3230ea7abd27003dc445c034 tests/generated/flex_basis_overrides_main_size.rs Rust · 58 lines · 2.4 KB History Who touched what raw

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

1#[test]
2fn flex_basis_overrides_main_size() {
3    let layout = stretch::compute(
4        &stretch::style::Node {
5            size: stretch::geometry::Size {
6                width: stretch::style::Dimension::Points(100f32),
7                height: stretch::style::Dimension::Points(100f32),
8                ..Default::default()
9            },
10            children: vec![
11                stretch::style::Node {
12                    flex_grow: 1f32,
13                    flex_basis: stretch::style::Dimension::Points(50f32),
14                    size: stretch::geometry::Size {
15                        width: stretch::style::Dimension::Points(20f32),
16                        ..Default::default()
17                    },
18                    ..Default::default()
19                },
20                stretch::style::Node {
21                    flex_grow: 1f32,
22                    size: stretch::geometry::Size {
23                        width: stretch::style::Dimension::Points(10f32),
24                        ..Default::default()
25                    },
26                    ..Default::default()
27                },
28                stretch::style::Node {
29                    flex_grow: 1f32,
30                    size: stretch::geometry::Size {
31                        width: stretch::style::Dimension::Points(10f32),
32                        ..Default::default()
33                    },
34                    ..Default::default()
35                },
36            ],
37            ..Default::default()
38        },
39        stretch::geometry::Size::undefined(),
40    )
41    .unwrap();
42    assert_eq!(layout.size.width, 100f32);
43    assert_eq!(layout.size.height, 100f32);
44    assert_eq!(layout.location.x, 0f32);
45    assert_eq!(layout.location.y, 0f32);
46    assert_eq!(layout.children[0usize].size.width, 60f32);
47    assert_eq!(layout.children[0usize].size.height, 100f32);
48    assert_eq!(layout.children[0usize].location.x, 0f32);
49    assert_eq!(layout.children[0usize].location.y, 0f32);
50    assert_eq!(layout.children[1usize].size.width, 20f32);
51    assert_eq!(layout.children[1usize].size.height, 100f32);
52    assert_eq!(layout.children[1usize].location.x, 60f32);
53    assert_eq!(layout.children[1usize].location.y, 0f32);
54    assert_eq!(layout.children[2usize].size.width, 20f32);
55    assert_eq!(layout.children[2usize].size.height, 100f32);
56    assert_eq!(layout.children[2usize].location.x, 80f32);
57    assert_eq!(layout.children[2usize].location.y, 0f32);
58}