064342cc5b
R=vsm@google.com Review URL: https://chromiumcodereview.appspot.com//10178014 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7124 260f80e4-7a28-3924-810f-c04153c831b5
56 lines
2.0 KiB
Dart
56 lines
2.0 KiB
Dart
#library('InstanceOfTest');
|
|
#import('../../lib/unittest/unittest.dart');
|
|
#import('../../lib/unittest/html_config.dart');
|
|
#import('dart:html');
|
|
|
|
main() {
|
|
CanvasElement canvas;
|
|
|
|
canvas = new Element.tag('canvas');
|
|
canvas.attributes['width'] = 100;
|
|
canvas.attributes['height'] = 100;
|
|
document.body.nodes.add(canvas);
|
|
|
|
useHtmlConfiguration();
|
|
test('Instanceof', () {
|
|
Expect.isFalse(canvas is CanvasRenderingContext);
|
|
Expect.isFalse(canvas is CanvasRenderingContext2D);
|
|
Expect.isTrue(canvas is Element);
|
|
Expect.isTrue(canvas is CanvasElement);
|
|
Expect.isFalse(canvas is ImageData);
|
|
// Expect.isFalse(canvas is CanvasPixelArray);
|
|
|
|
CanvasRenderingContext2D context = canvas.getContext('2d');
|
|
Expect.isTrue(context is CanvasRenderingContext);
|
|
Expect.isTrue(context is CanvasRenderingContext2D);
|
|
Expect.isFalse(context is Element);
|
|
Expect.isFalse(context is CanvasElement);
|
|
Expect.isFalse(context is ImageData);
|
|
// Expect.isFalse(context is CanvasPixelArray);
|
|
|
|
// FIXME(b/5286633): Interface injection type check workaround.
|
|
var image = context.createImageData(canvas.width.dynamic, canvas.height.dynamic);
|
|
Expect.isFalse(image is CanvasRenderingContext);
|
|
Expect.isFalse(image is CanvasRenderingContext2D);
|
|
Expect.isFalse(image is Element);
|
|
Expect.isFalse(image is CanvasElement);
|
|
Expect.isTrue(image is ImageData);
|
|
// Expect.isFalse(image is CanvasPixelArray);
|
|
|
|
// Include CanvasPixelArray since constructor and prototype are not
|
|
// available until one is created.
|
|
var bytes = image.data;
|
|
Expect.isFalse(bytes is CanvasRenderingContext);
|
|
Expect.isFalse(bytes is CanvasRenderingContext2D);
|
|
Expect.isFalse(bytes is Element);
|
|
Expect.isFalse(bytes is CanvasElement);
|
|
Expect.isFalse(bytes is ImageData);
|
|
Expect.isTrue(bytes is Uint8ClampedArray);
|
|
|
|
// FIXME: Ensure this is an SpanElement when we next update
|
|
// WebKit IDL.
|
|
var span = new Element.tag('span');
|
|
Expect.isTrue(span is Element);
|
|
});
|
|
}
|