test_bug732209.html 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <!DOCTYPE HTML>
  2. <html>
  3. <!--
  4. https://bugzilla.mozilla.org/show_bug.cgi?id=732209
  5. -->
  6. <head>
  7. <meta charset="utf-8">
  8. <title>Test for Bug 732209</title>
  9. <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
  10. <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
  11. <style>
  12. #content span { color: red; }
  13. #content span.reverse { color: green; }
  14. #content { display: block !important; }
  15. #content span::before { content: attr(id); }
  16. </style>
  17. <link rel="stylesheet" href="bug732209-css.sjs?one">
  18. <link rel="stylesheet" href="bug732209-css.sjs?two" crossorigin>
  19. <link rel="stylesheet" href="bug732209-css.sjs?three" crossorigin="use-credentials">
  20. <link rel="stylesheet"
  21. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?four">
  22. <link rel="stylesheet"
  23. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?five"
  24. crossorigin>
  25. <link rel="stylesheet"
  26. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?six"
  27. crossorigin="use-credentials">
  28. <link rel="stylesheet"
  29. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?seven&cors-anonymous">
  30. <link rel="stylesheet" id="cross-origin-sheet"
  31. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?eight&cors-anonymous"
  32. crossorigin>
  33. <link rel="stylesheet"
  34. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?nine&cors-anonymous"
  35. crossorigin="use-credentials">
  36. <link rel="stylesheet"
  37. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?ten&cors-credentials">
  38. <link rel="stylesheet"
  39. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?eleven&cors-credentials"
  40. crossorigin>
  41. <link rel="stylesheet"
  42. href="http://example.com/tests/layout/style/test/bug732209-css.sjs?twelve&cors-credentials"
  43. crossorigin="use-credentials">
  44. </head>
  45. <body>
  46. <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=732209">Mozilla Bug 732209</a>
  47. <p id="display"></p>
  48. <div id="content" style="display: none">
  49. <span id="one"></span>
  50. <span id="two"></span>
  51. <span id="three"></span>
  52. <span id="four"></span>
  53. <span id="five" class="reverse"></span>
  54. <span id="six" class="reverse"></span>
  55. <span id="seven"></span>
  56. <span id="eight"></span>
  57. <span id="nine" class="reverse"></span>
  58. <span id="ten"></span>
  59. <span id="eleven"></span>
  60. <span id="twelve"></span>
  61. </div>
  62. <pre id="test" style="color: red">
  63. <script type="application/javascript">
  64. /** Test for Bug 732209 **/
  65. SimpleTest.waitForExplicitFinish();
  66. addLoadEvent(function() {
  67. var spans = $("content").querySelectorAll("span");
  68. for (var i = 0; i < spans.length; ++i) {
  69. is(getComputedStyle(spans[i], "").color, "rgb(0, 128, 0)",
  70. "Span " + spans[i].id + " should be green");
  71. }
  72. try {
  73. var sheet = $("cross-origin-sheet").sheet;
  74. dump('aaa\n');
  75. is(sheet.cssRules.length, 2,
  76. "Should be able to get length of list of rules");
  77. is(sheet.cssRules[0].style.color, "green",
  78. "Should be able to read individual rules");
  79. } catch (e) {
  80. ok(false,
  81. "Should be allowed to access cross-origin sheet that opted in with CORS: " + e);
  82. }
  83. SimpleTest.finish();
  84. });
  85. </script>
  86. </pre>
  87. </body>
  88. </html>