blob: 0aef5da0c7d0cfd5ffbe6ebfbc8ea56f4095cedc [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 IFrameElement.created()
/// Constructor instantiated by the DOM when a custom element has been created.
/// This can only be called by subclasses from their created constructor.
/// @description Checks that this constructor can be called only by subclasses
/// @issue 43293
import "dart:html";
import "../../../Utils/expect.dart";
class MyIFrameElement extends IFrameElement {
factory MyIFrameElement() {
return new Element.tag('my-iframe') as MyIFrameElement;
MyIFrameElement.created() : super.created();
String testit() => "In testit";
main() {
var ife;
Expect.throws(() {
ife = new IFrameElement.created();
var tag = 'my-iframe';
document.registerElement(tag, MyIFrameElement, extendsTag: "iframe");
ife = document.createElement('iframe', 'my-iframe');
Expect.isTrue(ife is MyIFrameElement);
Expect.equals("In testit", ife.testit());