polished_css/property/scroll/
padding.rs

1//! FIXME: Handle shorthands
2
3macro_rules! create_struct {
4    ($property:ident, $atomic:expr) => {
5        $crate::create_property!(
6            $property,
7            display = "",
8            atomic = $atomic,
9            custom = false,
10            data_type = "<length-percentage>",
11            initial_value = Auto,
12            keywords = "auto",
13        );
14    };
15}
16
17create_struct!(ScrollPadding, "scroll-p");
18create_struct!(ScrollPaddingBlock, "scroll-p-bl");
19create_struct!(ScrollPaddingBlockStart, "scroll-p-bl-s");
20create_struct!(ScrollPaddingBlockEnd, "scroll-p-bl-e");
21create_struct!(ScrollPaddingInline, "scroll-p-in");
22create_struct!(ScrollPaddingInlineStart, "scroll-p-in-s");
23create_struct!(ScrollPaddingInlineEnd, "scroll-p-in-e");
24create_struct!(ScrollPaddingTop, "scroll-p-t");
25create_struct!(ScrollPaddingBottom, "scroll-p-b");
26create_struct!(ScrollPaddingLeft, "scroll-p-l");
27create_struct!(ScrollPaddingRight, "scroll-p-r");
28
29#[cfg(test)]
30mod test {
31    #[test]
32    fn paddings() {
33        macro_rules! test_property {
34            ($property:ident, $name:expr, $atomic:expr) => {
35                crate::test_property_initial_value!($property, Auto);
36                crate::test_global_keywords!($property, $name);
37                crate::test_function_var!($property, $name);
38                #[cfg(feature = "atomic")]
39                crate::test_atomic_property!($property, $atomic);
40            };
41        }
42        test_property!(ScrollPadding, "scroll-padding", "scroll-p");
43        test_property!(ScrollPaddingBlock, "scroll-padding-block", "scroll-p-bl");
44        test_property!(
45            ScrollPaddingBlockStart,
46            "scroll-padding-block-start",
47            "scroll-p-bl-s"
48        );
49        test_property!(
50            ScrollPaddingBlockEnd,
51            "scroll-padding-block-end",
52            "scroll-p-bl-e"
53        );
54        test_property!(ScrollPaddingInline, "scroll-padding-inline", "scroll-p-in");
55        test_property!(
56            ScrollPaddingInlineStart,
57            "scroll-padding-inline-start",
58            "scroll-p-in-s"
59        );
60        test_property!(
61            ScrollPaddingInlineEnd,
62            "scroll-padding-inline-end",
63            "scroll-p-in-e"
64        );
65        test_property!(ScrollPaddingTop, "scroll-padding-top", "scroll-p-t");
66        test_property!(ScrollPaddingBottom, "scroll-padding-bottom", "scroll-p-b");
67        test_property!(ScrollPaddingLeft, "scroll-padding-left", "scroll-p-l");
68        test_property!(ScrollPaddingRight, "scroll-padding-right", "scroll-p-r");
69    }
70}