4cc31f8f4f
There are no behavioral changes here, I just ran `dart format` on the `tests/lib/html/` directory. Change-Id: I221b2a370adc393e49621db1d37aa6eeb09b3015 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425329 Reviewed-by: Srujan Gaddam <srujzs@google.com> Auto-Submit: Bob Nystrom <rnystrom@google.com> Commit-Queue: Bob Nystrom <rnystrom@google.com>
109 lines
3.3 KiB
Dart
109 lines
3.3 KiB
Dart
// 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.
|
|
|
|
import 'dart:html';
|
|
import 'dart:indexed_db' show IdbFactory, KeyRange;
|
|
import 'dart:typed_data' show Int32List;
|
|
import 'dart:js';
|
|
|
|
import 'package:js/js_util.dart' as js_util;
|
|
import 'package:expect/legacy/minitest.dart'; // ignore: deprecated_member_use_from_same_package
|
|
|
|
import 'js_test_util.dart';
|
|
|
|
main() {
|
|
injectJs();
|
|
|
|
test('Date', () {
|
|
context['o'] = new DateTime(1995, 12, 17);
|
|
var dateType = context['Date'];
|
|
expect(context.callMethod('isPropertyInstanceOf', ['o', dateType]), isTrue);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
skipIE9_test('window', () {
|
|
context['o'] = window;
|
|
var windowType = context['Window'];
|
|
expect(
|
|
context.callMethod('isPropertyInstanceOf', ['o', windowType]),
|
|
isTrue,
|
|
);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
skipIE9_test('document', () {
|
|
context['o'] = document;
|
|
var documentType = context['Document'];
|
|
expect(
|
|
context.callMethod('isPropertyInstanceOf', ['o', documentType]),
|
|
isTrue,
|
|
);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
skipIE9_test('Blob', () {
|
|
var fileParts = ['<a id="a"><b id="b">hey!</b></a>'];
|
|
context['o'] = new Blob(fileParts, 'text/html');
|
|
var blobType = context['Blob'];
|
|
expect(context.callMethod('isPropertyInstanceOf', ['o', blobType]), isTrue);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
test('unattached DivElement', () {
|
|
context['o'] = new DivElement();
|
|
var divType = context['HTMLDivElement'];
|
|
expect(context.callMethod('isPropertyInstanceOf', ['o', divType]), isTrue);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
test('Event', () {
|
|
context['o'] = new CustomEvent('test');
|
|
var eventType = context['Event'];
|
|
expect(
|
|
context.callMethod('isPropertyInstanceOf', ['o', eventType]),
|
|
isTrue,
|
|
);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
test('KeyRange', () {
|
|
if (IdbFactory.supported) {
|
|
context['o'] = new KeyRange.only(1);
|
|
var keyRangeType = context['IDBKeyRange'];
|
|
expect(
|
|
context.callMethod('isPropertyInstanceOf', ['o', keyRangeType]),
|
|
isTrue,
|
|
);
|
|
context.deleteProperty('o');
|
|
}
|
|
});
|
|
|
|
// this test fails in IE9 for very weird, but unknown, reasons
|
|
// the expression context['ImageData'] fails if useHtmlConfiguration()
|
|
// is called, or if the other tests in this file are enabled
|
|
skipIE9_test('ImageData', () {
|
|
var canvas = new CanvasElement();
|
|
var ctx = canvas.getContext('2d') as CanvasRenderingContext2D;
|
|
context['o'] = ctx.createImageData(1, 1);
|
|
var imageDataType = context['ImageData'];
|
|
expect(
|
|
context.callMethod('isPropertyInstanceOf', ['o', imageDataType]),
|
|
isTrue,
|
|
);
|
|
context.deleteProperty('o');
|
|
});
|
|
|
|
test('typed data: Int32List', () {
|
|
if (Platform.supportsTypedData) {
|
|
context['o'] = new Int32List.fromList([1, 2, 3, 4]);
|
|
var listType = context['Int32Array'];
|
|
// TODO(jacobr): make this test pass. Currently some type information
|
|
// is lost when typed arrays are passed between JS and Dart.
|
|
// expect(context.callMethod('isPropertyInstanceOf', ['o', listType]),
|
|
// isTrue);
|
|
context.deleteProperty('o');
|
|
}
|
|
});
|
|
}
|