blob: d7772f0eb36a523a6252f895380662f9e60517b5 [file] [log] [blame]
/*
* Copyright (c) 2013, 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.
*/
/*
* Portions of this test are derived from code under the following license:
*
* Web-platform-tests are covered by the dual-licensing approach described in:
* http://www.w3.org/Consortium/Legal/2008/04-testsuite-copyright.html
*/
/**
* @assertion Extensions to Element Interface: createShadowRoot method
*/
import 'dart:html';
import "../../../../../Utils/expect.dart";
import '../../../testcommon.dart';
main() {
var d = document;
var host = d.createElement('div');
d.body.append(host);
var span = d.createElement('span');
span.setAttribute('id', 'sp0');
span.innerHtml = 'Some text';
host.append(span);
//old tree
var s1 = host.createShadowRoot();
s1.innerHtml = '<span id="sp1">Span 1</span>';
//young tree
var s2 = host.createShadowRoot();
s2.innerHtml = '<span id="sp2">Span 2</span>';
// span should become invisible as shadow root content
assert_equals(span.offsetTop, 0, 'Point 1:createShadowRoot() method should add ' +
'the ShadowRoot object at the top of the tree stack of its host');
assert_equals(s1.querySelector('#sp1').offsetTop, 0, 'Point 2:createShadowRoot() method should add ' +
'the ShadowRoot object at the top of the tree stack of its host');
assert_true(s2.querySelector('#sp2').offsetTop > 0, 'Point 3:createShadowRoot() method should add ' +
'the ShadowRoot object at the top of the tree stack of its host');
}