blob: f86f9ac56058d1107cfb813f149bf30873e48e0f [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.
*/
/**
* @assertion Node replaceWith(Node otherNode)
* Replaces this node with another node.
* @description Checks expected dom after replace
*/
import "dart:html";
import "../../../Utils/expect.dart";
main() {
//------
var x =
new Element.html('<div><iframe><pre></pre></iframe><span></span></div>');
var oldElem = x.querySelector('iframe');
Expect.isTrue(oldElem is IFrameElement);
var newElem = new AnchorElement();
oldElem?.replaceWith(newElem);
Expect.equals('<div><a></a><span></span></div>', x.outerHtml,
'replace subtree with single element');
//------
x = new Element.html('<div><a></a><span></span></div>');
oldElem = x.querySelector('a');
var newElem2 = new Element.html('<h1><pre></pre></h1>');
oldElem?.replaceWith(newElem2);
Expect.equals('<div><h1><pre></pre></h1><span></span></div>', x.outerHtml,
'replace single element with subtree');
}