OLD | NEW |
1 #library('InstanceOfTest'); | 1 #library('InstanceOfTest'); |
2 #import('../../pkg/unittest/unittest.dart'); | 2 #import('../../pkg/unittest/unittest.dart'); |
3 #import('../../pkg/unittest/html_config.dart'); | 3 #import('../../pkg/unittest/html_config.dart'); |
4 #import('dart:html'); | 4 #import('dart:html'); |
5 | 5 |
6 main() { | 6 main() { |
7 CanvasElement canvas; | 7 CanvasElement canvas; |
8 | 8 |
9 canvas = new Element.tag('canvas'); | 9 canvas = new Element.tag('canvas'); |
10 canvas.attributes['width'] = 100; | 10 canvas.attributes['width'] = 100; |
11 canvas.attributes['height'] = 100; | 11 canvas.attributes['height'] = 100; |
12 document.body.nodes.add(canvas); | 12 document.body.nodes.add(canvas); |
13 | 13 |
| 14 var isCanvasRenderingContext = predicate((x) => x is CanvasRenderingContext, |
| 15 'is a CanvasRenderingContext'); |
| 16 var isCanvasRenderingContext2D = |
| 17 predicate((x) => x is CanvasRenderingContext2D, |
| 18 'is a CanvasRenderingContext2D'); |
| 19 var isElement = predicate((x) => x is Element, 'is an Element'); |
| 20 var isCanvasElement = |
| 21 predicate((x) => x is CanvasElement, 'is a CanvasElement'); |
| 22 var isImageData = predicate((x) => x is ImageData, 'is an ImageData'); |
| 23 //var isCanvasPixelArray = |
| 24 // predicate((x) => x is CanvasPixelArray, 'is a CanvasPixelArray'); |
| 25 var isUint8ClampedArray = |
| 26 predicate((x) => x is Uint8ClampedArray, 'is a Uint8ClampedArray'); |
| 27 |
14 useHtmlConfiguration(); | 28 useHtmlConfiguration(); |
15 test('Instanceof', () { | 29 test('Instanceof', () { |
16 Expect.isFalse(canvas is CanvasRenderingContext); | 30 expect(canvas, isNot(isCanvasRenderingContext)); |
17 Expect.isFalse(canvas is CanvasRenderingContext2D); | 31 expect(canvas, isNot(isCanvasRenderingContext2D)); |
18 Expect.isTrue(canvas is Element); | 32 expect(canvas, isElement); |
19 Expect.isTrue(canvas is CanvasElement); | 33 expect(canvas, isCanvasElement); |
20 Expect.isFalse(canvas is ImageData); | 34 expect(canvas, isNot(isImageData)); |
21 // Expect.isFalse(canvas is CanvasPixelArray); | 35 // expect(canvas, isNot(isCanvasPixelArray)); |
22 | 36 |
23 CanvasRenderingContext2D context = canvas.getContext('2d'); | 37 CanvasRenderingContext2D context = canvas.getContext('2d'); |
24 Expect.isTrue(context is CanvasRenderingContext); | 38 expect(context, isCanvasRenderingContext); |
25 Expect.isTrue(context is CanvasRenderingContext2D); | 39 expect(context, isCanvasRenderingContext2D); |
26 Expect.isFalse(context is Element); | 40 expect(context, isNot(isElement)); |
27 Expect.isFalse(context is CanvasElement); | 41 expect(context, isNot(isCanvasElement)); |
28 Expect.isFalse(context is ImageData); | 42 expect(context, isNot(isImageData)); |
29 // Expect.isFalse(context is CanvasPixelArray); | 43 // expect(context, isNot(isCanvasPixelArray)); |
30 | 44 |
31 // FIXME(b/5286633): Interface injection type check workaround. | 45 // FIXME(b/5286633): Interface injection type check workaround. |
32 var image = context.createImageData(canvas.width as Dynamic, | 46 var image = context.createImageData(canvas.width as Dynamic, |
33 canvas.height as Dynamic); | 47 canvas.height as Dynamic); |
34 Expect.isFalse(image is CanvasRenderingContext); | 48 expect(image, isNot(isCanvasRenderingContext)); |
35 Expect.isFalse(image is CanvasRenderingContext2D); | 49 expect(image, isNot(isCanvasRenderingContext2D)); |
36 Expect.isFalse(image is Element); | 50 expect(image, isNot(isElement)); |
37 Expect.isFalse(image is CanvasElement); | 51 expect(image, isNot(isCanvasElement)); |
38 Expect.isTrue(image is ImageData); | 52 expect(image, isImageData); |
39 // Expect.isFalse(image is CanvasPixelArray); | 53 // expect(image, isNot(isCanvasPixelArray)); |
40 | 54 |
41 // Include CanvasPixelArray since constructor and prototype are not | 55 // Include CanvasPixelArray since constructor and prototype are not |
42 // available until one is created. | 56 // available until one is created. |
43 var bytes = image.data; | 57 var bytes = image.data; |
44 Expect.isFalse(bytes is CanvasRenderingContext); | 58 expect(bytes, isNot(isCanvasRenderingContext)); |
45 Expect.isFalse(bytes is CanvasRenderingContext2D); | 59 expect(bytes, isNot(isCanvasRenderingContext2D)); |
46 Expect.isFalse(bytes is Element); | 60 expect(bytes, isNot(isElement)); |
47 Expect.isFalse(bytes is CanvasElement); | 61 expect(bytes, isNot(isCanvasElement)); |
48 Expect.isFalse(bytes is ImageData); | 62 expect(bytes, isNot(isImageData)); |
49 Expect.isTrue(bytes is Uint8ClampedArray); | 63 expect(bytes, isUint8ClampedArray); |
50 | 64 |
51 // FIXME: Ensure this is an SpanElement when we next update | 65 // FIXME: Ensure this is an SpanElement when we next update |
52 // WebKit IDL. | 66 // WebKit IDL. |
53 var span = new Element.tag('span'); | 67 var span = new Element.tag('span'); |
54 Expect.isTrue(span is Element); | 68 expect(span, isElement); |
55 }); | 69 }); |
56 } | 70 } |
OLD | NEW |