summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/cssom/StyleSheetList.html
blob: bb7d2ff4e3e6fb553bb102032a0396ff73528e5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>CSSOM - StyleSheetList interface</title>
    <link rel="help" href="https://drafts.csswg.org/cssom/#the-stylesheetlist-interface">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <style>
        body { width: 50%; }
    </style>
    <style>
        #foo { width: 10%; }
        #bar { height: 100px; }
    </style>
    <script>
    test(function () {
        var styleSheets = document.styleSheets;
        assert_equals(styleSheets.length, 2, "StyleSheetList length attribute");
        assert_equals(styleSheets[0].cssRules.length, 1, "StyleSheetList indexed getter length attribute");
        assert_equals(styleSheets[1].cssRules.length, 2, "StyleSheetList indexed getter length attribute");
        assert_equals(styleSheets[2], undefined, "StyleSheetList indexed getter length attribute");
        assert_equals(styleSheets.item(0).cssRules.length, 1, "StyleSheetList item function length attribute");
        assert_equals(styleSheets.item(1).cssRules.length, 2, "StyleSheetList item function length attribute");
        assert_equals(styleSheets.item(2), null, "StyleSheetList item function length attribute");

        styleSheets[0].randomProperty = 1;
        var style = document.createElement("style");
        document.head.appendChild(style);
        assert_equals(styleSheets[0].randomProperty, 1, "[SameObject] StyleSheetList");
    });
    </script>
</head>
</html>