blob: 0ce129216ee59dd71d5903dece4c239d41d2fe74 [file] [log] [blame]
/*
* Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
* for details. All rights reserved. Use of this source code is governed by a
* BSD-style license that can be found in the LICENSE file.
*/
/**
* @description Test for cssText of ':host()' rule.
*/
import "dart:html";
import "../../../testcommon.dart";
main() {
var style = new DocumentFragment.html('''
<style id="style1">
.foo:host(div, body.mytheme, p#myid, .bar::before, span:hover) > div { display: block; }
:host { display: block; }
:host(*) { display: block; }
</style>
<style id="style-invalid">
:host(div div) { display: block }
:host(div > div) { display: block }
:host(div + div) { display: block }
:host(div ~ div) { display: block }
:host) { display: block }
:host() { display: block; }
</style>
''', treeSanitizer: new NullTreeSanitizer());
document.head.append(style);
StyleElement se1 = document.getElementById('style1');
CssStyleSheet sh1 = se1.sheet;
shouldBeLikeString(sh1.cssRules[0].cssText, ":host { display: block; }");
shouldBeLikeString(sh1.cssRules[1].cssText, ":host(*) { display: block; }");
StyleElement se2 = document.getElementById('style-invalid');
CssStyleSheet sh2 = se2.sheet;
shouldBe(sh2.cssRules.length, 0);
}