| Index: tests/html/element_types_test.dart
|
| diff --git a/tests/html/element_types_test.dart b/tests/html/element_types_test.dart
|
| index df0c48862c955285bae04f24e889de874897d0be..7e1aee5b54e807df4b94a16dd43a0be35590831c 100644
|
| --- a/tests/html/element_types_test.dart
|
| +++ b/tests/html/element_types_test.dart
|
| @@ -82,17 +82,17 @@ main() {
|
| });
|
| });
|
|
|
| - check(String name, bool fn(), [bool supported = true]) {
|
| - test(name, () {
|
| - var expectation = supported ? returnsNormally : throws;
|
| - expect(() {
|
| - expect(fn(), isTrue);
|
| - }, expectation);
|
| - });
|
| -
|
| - }
|
|
|
| group('constructors', () {
|
| + check(String name, bool fn(), [bool supported = true]) {
|
| + test(name, () {
|
| + var expectation = supported ? returnsNormally : throws;
|
| + expect(() {
|
| + expect(fn(), isTrue);
|
| + }, expectation);
|
| + });
|
| + }
|
| +
|
| check('a', () => new AnchorElement() is AnchorElement);
|
| check('area', () => new AreaElement() is AreaElement);
|
| check('audio', () => new AudioElement() is AudioElement);
|
| @@ -185,4 +185,113 @@ main() {
|
| check('video', () => new VideoElement() is VideoElement);
|
| check('unknown', () => new Element.tag('someunknown') is UnknownElement);
|
| });
|
| +
|
| + group('constructors_dynamic', () {
|
| + check(String name, create(), bool typeTest(e), [bool supported = true]) {
|
| + test(name, () {
|
| + var expectation = supported ? returnsNormally : throws;
|
| + expect(() {
|
| + expect(typeTest(create()), isTrue);
|
| + }, expectation);
|
| + });
|
| + }
|
| +
|
| + check('a', () => new AnchorElement(), (e) => e is AnchorElement);
|
| + check('area', () => new AreaElement(), (e) => e is AreaElement);
|
| + check('audio', () => new AudioElement(), (e) => e is AudioElement);
|
| + check('body', () => new BodyElement(), (e) => e is BodyElement);
|
| + check('br', () => new BRElement(), (e) => e is BRElement);
|
| + check('base', () => new BaseElement(), (e) => e is BaseElement);
|
| + check('button', () => new ButtonElement(), (e) => e is ButtonElement);
|
| + check('canvas', () => new CanvasElement(), (e) => e is CanvasElement);
|
| + check('caption', () => new TableCaptionElement(),
|
| + (e) => e is TableCaptionElement);
|
| + check('content', () => new ContentElement(), (e) => e is ContentElement,
|
| + ContentElement.supported);
|
| + check('details', () => new DetailsElement(), (e) => e is DetailsElement,
|
| + DetailsElement.supported);
|
| + check('datalist', () => new DataListElement(), (e) => e is DataListElement,
|
| + DataListElement.supported);
|
| + check('dl', () => new DListElement(), (e) => e is DListElement);
|
| + check('div', () => new DivElement(), (e) => e is DivElement);
|
| + check('embed', () => new EmbedElement(), (e) => e is EmbedElement,
|
| + EmbedElement.supported);
|
| + check('fieldset', () => new FieldSetElement(), (e) => e is FieldSetElement);
|
| + check('form', () => new FormElement(), (e) => e is FormElement);
|
| + check('head', () => new HeadElement(), (e) => e is HeadElement);
|
| + check('hr', () => new HRElement(), (e) => e is HRElement);
|
| + check('html', () => new HtmlHtmlElement(), (e) => e is HtmlHtmlElement);
|
| + check('h1', () => new HeadingElement.h1(), (e) => e is HeadingElement);
|
| + check('h2', () => new HeadingElement.h2(), (e) => e is HeadingElement);
|
| + check('h3', () => new HeadingElement.h3(), (e) => e is HeadingElement);
|
| + check('h4', () => new HeadingElement.h4(), (e) => e is HeadingElement);
|
| + check('h5', () => new HeadingElement.h5(), (e) => e is HeadingElement);
|
| + check('h6', () => new HeadingElement.h6(), (e) => e is HeadingElement);
|
| + check('iframe', () => new IFrameElement(), (e) => e is IFrameElement);
|
| + check('img', () => new ImageElement(), (e) => e is ImageElement);
|
| + check('input', () => new InputElement(), (e) => e is InputElement);
|
| + check('keygen', () => new KeygenElement(), (e) => e is KeygenElement,
|
| + KeygenElement.supported);
|
| + check('li', () => new LIElement(), (e) => e is LIElement);
|
| + check('label', () => new LabelElement(), (e) => e is LabelElement);
|
| + check('legen', () => new LegendElement(), (e) => e is LegendElement);
|
| + check('link', () => new LinkElement(), (e) => e is LinkElement);
|
| + check('map', () => new MapElement(), (e) => e is MapElement);
|
| + check('menu', () => new MenuElement(), (e) => e is MenuElement);
|
| + check('meta', () => new MetaElement(), (e) => e is MetaElement);
|
| + check('meter', () => new MeterElement(), (e) => e is MeterElement,
|
| + MeterElement.supported);
|
| + check('del', () => new Element.tag('del'), (e) => e is ModElement);
|
| + check('ins', () => new Element.tag('ins'), (e) => e is ModElement);
|
| + check('object', () => new ObjectElement(), (e) => e is ObjectElement,
|
| + ObjectElement.supported);
|
| + check('ol', () => new OListElement(), (e) => e is OListElement);
|
| + check('optgroup', () => new OptGroupElement(), (e) => e is OptGroupElement);
|
| + check('option', () => new OptionElement(), (e) => e is OptionElement);
|
| + check('output', () => new OutputElement(), (e) => e is OutputElement,
|
| + OutputElement.supported);
|
| + check('p', () => new ParagraphElement(), (e) => e is ParagraphElement);
|
| + check('param', () => new ParamElement(), (e) => e is ParamElement);
|
| + check('pre', () => new PreElement(), (e) => e is PreElement);
|
| + check('progress', () => new ProgressElement(), (e) => e is ProgressElement,
|
| + ProgressElement.supported);
|
| + check('q', () => new QuoteElement(), (e) => e is QuoteElement);
|
| + check('script', () => new ScriptElement(), (e) => e is ScriptElement);
|
| + check('select', () => new SelectElement(), (e) => e is SelectElement);
|
| + check('shadow', () => new ShadowElement(), (e) => e is ShadowElement,
|
| + ShadowElement.supported);
|
| + check('source', () => new SourceElement(), (e) => e is SourceElement);
|
| + check('span', () => new SpanElement(), (e) => e is SpanElement);
|
| + check('style', () => new StyleElement(), (e) => e is StyleElement);
|
| + check('table', () => new TableElement(), (e) => e is TableElement);
|
| + check('template', () => new TemplateElement(), (e) => e is TemplateElement,
|
| + TemplateElement.supported);
|
| + check('textarea', () => new TextAreaElement(), (e) => e is TextAreaElement);
|
| + check('title', () => new TitleElement(), (e) => e is TitleElement);
|
| + check('td', () => new TableCellElement(), (e) => e is TableCellElement);
|
| + check('col', () => new TableColElement(), (e) => e is TableColElement);
|
| + check('colgroup', () => new Element.tag('colgroup'),
|
| + (e) => e is TableColElement);
|
| + check('tr', () => new TableRowElement(), (e) => e is TableRowElement);
|
| + check('tbody', () => new Element.tag('tbody'),
|
| + (e) => e is TableSectionElement);
|
| + check('tfoot', () => new Element.tag('tfoot'),
|
| + (e) => e is TableSectionElement);
|
| + check('thead', () => new Element.tag('thead'),
|
| + (e) => e is TableSectionElement);
|
| + check('track', () => new TrackElement(), (e) => e is TrackElement,
|
| + TrackElement.supported);
|
| + group('ul', () {
|
| + check('ul', () => new UListElement(), (e) => e is UListElement);
|
| +
|
| + test('accepts li', () {
|
| + var ul = new UListElement();
|
| + var li = new LIElement();
|
| + ul.append(li);
|
| + });
|
| + });
|
| + check('video', () => new VideoElement(), (e) => e is VideoElement);
|
| + check('unknown', () => new Element.tag('someunknown'),
|
| + (e) => e is UnknownElement);
|
| + });
|
| }
|
|
|