fn test_property_sheet_with_fields()

in cli/src/generate/properties.rs [1146:1208]


    fn test_property_sheet_with_fields() {
        let sheet = generate_property_sheet(
            "foo.css",
            "
                a {
                    color: red;
                    &.x {
                        color: green;
                        b {
                            color: blue;
                            &.y { color: yellow; }
                        }
                    }
                    b { color: orange; }
                    b.y { color: indigo; }
                }
                .x { color: violet; }
            ",
            &HashSet::new(),
        )
        .unwrap();

        assert_eq!(
            *query(&sheet, vec![("a", None, true, 0)], ""),
            props(&[("color", string("red"))])
        );
        assert_eq!(
            *query(&sheet, vec![("a", Some("x"), true, 0)], ""),
            props(&[("color", string("green"))])
        );
        assert_eq!(
            *query(
                &sheet,
                vec![("a", Some("x"), true, 0), ("b", None, true, 0)],
                ""
            ),
            props(&[("color", string("blue"))])
        );
        assert_eq!(
            *query(
                &sheet,
                vec![("a", Some("x"), true, 0), ("b", Some("y"), true, 0)],
                ""
            ),
            props(&[("color", string("yellow"))])
        );
        assert_eq!(
            *query(&sheet, vec![("b", Some("x"), true, 0)], ""),
            props(&[("color", string("violet"))])
        );
        assert_eq!(
            *query(&sheet, vec![("a", None, true, 0), ("b", None, true, 0)], ""),
            props(&[("color", string("orange"))])
        );
        assert_eq!(
            *query(
                &sheet,
                vec![("a", None, true, 0), ("b", Some("y"), true, 0)],
                ""
            ),
            props(&[("color", string("indigo"))])
        );
    }