Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: tests/html/canvasrenderingcontext2d_test.dart

Issue 15773008: Exposing DOM float & double types as double rather than num. Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tests/html/canvas_test.dart ('k') | tests/html/css_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/html/canvasrenderingcontext2d_test.dart
diff --git a/tests/html/canvasrenderingcontext2d_test.dart b/tests/html/canvasrenderingcontext2d_test.dart
index 1aa0148cd6cc11791ede2e4b3aef3be88e181e1a..f7f37a350066ff1db121cf474eb98035814f1aa4 100644
--- a/tests/html/canvasrenderingcontext2d_test.dart
+++ b/tests/html/canvasrenderingcontext2d_test.dart
@@ -35,7 +35,8 @@ void createOtherCanvas() {
otherCanvas.height = 10;
otherContext = otherCanvas.context2D;
otherContext.fillStyle = "red";
- otherContext.fillRect(0, 0, otherCanvas.width, otherCanvas.height);
+ otherContext.fillRect(0.0, 0.0,
+ otherCanvas.width.toDouble(), otherCanvas.height.toDouble());
}
void setupFunc() {
@@ -52,28 +53,28 @@ void tearDownFunc() {
video = null;
}
-List<int> readPixel(int x, int y) {
- var imageData = context.getImageData(x, y, 1, 1);
+List<int> readPixel(num x, num y) {
+ var imageData = context.getImageData(x.toDouble(), y.toDouble(), 1.0, 1.0);
return imageData.data;
}
/// Returns true if the pixel has some data in it, false otherwise.
-bool isPixelFilled(int x, int y) => readPixel(x,y).any((p) => p != 0);
+bool isPixelFilled(num x, num y) => readPixel(x,y).any((p) => p != 0);
-String pixelDataToString(List<int> data, int x, int y) {
+String pixelDataToString(List<int> data, num x, num y) {
return '[${data.join(", ")}]';
}
String _filled(bool v) => v ? "filled" : "unfilled";
-void expectPixelFilled(int x, int y, [bool filled = true]) {
- expect(isPixelFilled(x, y), filled, reason:
+void expectPixelFilled(num x, num y, [bool filled = true]) {
+ expect(isPixelFilled(x.toInt(), y.toInt()), filled, reason:
'Pixel at ($x, $y) was expected to'
' be: <${_filled(filled)}> but was: <${_filled(!filled)}> with data: '
'${pixelDataToString(readPixel(x, y), x, y)}');
}
-void expectPixelUnfilled(int x, int y) {
+void expectPixelUnfilled(num x, num y) {
expectPixelFilled(x, y, false);
}
@@ -86,101 +87,113 @@ main() {
test('setFillColorRgb', () {
context.setFillColorRgb(255, 0, 255, 1);
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
expect(readPixel(2, 2), [255, 0, 255, 255]);
});
test('setFillColorHsl hue', () {
context.setFillColorHsl(0, 100, 50);
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
checkPixel(readPixel(2, 2), [255, 0, 0, 255]);
});
test('setFillColorHsl hue 2', () {
context.setFillColorHsl(240, 100, 50);
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
checkPixel(readPixel(2, 2), [0, 0, 255, 255]);
});
test('setFillColorHsl sat', () {
context.setFillColorHsl(0, 0, 50);
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
checkPixel(readPixel(2, 2), [127, 127, 127, 255]);
});
test('setStrokeColorRgb', () {
context.setStrokeColorRgb(255, 0, 255, 1);
- context.lineWidth = 10;
- context.strokeRect(0, 0, canvas.width, canvas.height);
+ context.lineWidth = 10.0;
+ context.strokeRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
expect(readPixel(2, 2), [255, 0, 255, 255]);
});
test('setStrokeColorHsl hue', () {
context.setStrokeColorHsl(0, 100, 50);
- context.lineWidth = 10;
- context.strokeRect(0, 0, canvas.width, canvas.height);
+ context.lineWidth = 10.0;
+ context.strokeRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
expect(readPixel(2, 2), [255, 0, 0, 255]);
});
test('setStrokeColorHsl hue 2', () {
context.setStrokeColorHsl(240, 100, 50);
- context.lineWidth = 10;
- context.strokeRect(0, 0, canvas.width, canvas.height);
+ context.lineWidth = 10.0;
+ context.strokeRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
expect(readPixel(2, 2), [0, 0, 255, 255]);
});
test('setStrokeColorHsl sat', () {
context.setStrokeColorHsl(0, 0, 50);
- context.lineWidth = 10;
- context.strokeRect(0, 0, canvas.width, canvas.height);
+ context.lineWidth = 10.0;
+ context.strokeRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
checkPixel(readPixel(2, 2), [127, 127, 127, 255]);
});
test('fillStyle', () {
context.fillStyle = "red";
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
checkPixel(readPixel(2, 2), [255, 0, 0, 255]);
});
test('strokeStyle', () {
context.strokeStyle = "blue";
- context.lineWidth = 10;
- context.strokeRect(0, 0, canvas.width, canvas.height);
+ context.lineWidth = 10.0;
+ context.strokeRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
expect(readPixel(2, 2), [0, 0, 255, 255]);
});
test('fillStyle linearGradient', () {
- var gradient = context.createLinearGradient(0,0,20,20);
- gradient.addColorStop(0,'red');
- gradient.addColorStop(1,'blue');
+ var gradient = context.createLinearGradient(0.0,0.0,20.0,20.0);
+ gradient.addColorStop(0.0,'red');
+ gradient.addColorStop(1.0,'blue');
context.fillStyle = gradient;
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
expect(context.fillStyle is CanvasGradient, isTrue);
});
test('putImageData', () {
context.fillStyle = 'green';
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0,
+ canvas.width.toDouble(), canvas.height.toDouble());
- ImageData expectedData = context.getImageData(0, 0, 10, 10);
+ ImageData expectedData = context.getImageData(0.0, 0.0, 10.0, 10.0);
expectedData.data[0] = 25;
expectedData.data[1] = 65;
expectedData.data[2] = 255;
// Set alpha to 255 to make the pixels show up.
expectedData.data[3] = 255;
- context.putImageData(expectedData, 0, 0);
+ context.putImageData(expectedData, 0.0, 0.0);
- var resultingData = context.getImageData(0, 0, 10, 10);
+ var resultingData = context.getImageData(0.0, 0.0, 10.0, 10.0);
// Make sure that we read back what we wrote.
expect(resultingData.data, expectedData.data);
});
test('putImageData dirty rectangle', () {
context.fillStyle = 'green';
- context.fillRect(0, 0, canvas.width, canvas.height);
+ context.fillRect(0.0, 0.0, canvas.width.toDouble(), canvas.height.toDouble());
- ImageData drawnData = context.getImageData(0, 0, 10, 10);
+ ImageData drawnData = context.getImageData(0.0, 0.0, 10.0, 10.0);
drawnData.data[0] = 25;
drawnData.data[1] = 65;
drawnData.data[2] = 255;
@@ -199,10 +212,10 @@ main() {
drawnData.data[7 * 4 + 3] = 255;
// Use a dirty rectangle to limit what pixels are drawn.
- context.putImageData(drawnData, 0, 0, 1, 0, 5, 5);
+ context.putImageData(drawnData, 0.0, 0.0, 1.0, 0.0, 5.0, 5.0);
// Expect the data to be all green, as we skip all drawn pixels.
- ImageData expectedData = context.createImageData(10, 10);
+ ImageData expectedData = context.createImageData(10.0, 10.0);
for (int i = 0; i < expectedData.data.length; i++) {
switch (i % 4) {
case 0:
@@ -226,19 +239,19 @@ main() {
expectedData.data[2 * 4 + 3] = 255;
// Make sure that our data is all green.
- var resultingData = context.getImageData(0, 0, 10, 10);
+ var resultingData = context.getImageData(0.0, 0.0, 10.0, 10.0);
expect(resultingData.data, expectedData.data);
});
test('putImageData throws with wrong number of arguments', () {
- ImageData expectedData = context.getImageData(0, 0, 10, 10);
+ ImageData expectedData = context.getImageData(0.0, 0.0, 10.0, 10.0);
// TODO(antonm): in Dartium ArgumentError should be thrown too.
- expect(() => context.putImageData(expectedData, 0, 0, 1),
+ expect(() => context.putImageData(expectedData, 0.0, 0.0, 1.0),
throws);
- expect(() => context.putImageData(expectedData, 0, 0, 1, 1),
+ expect(() => context.putImageData(expectedData, 0.0, 0.0, 1.0, 1.0),
throws);
- expect(() => context.putImageData(expectedData, 0, 0, 1, 1, 5),
+ expect(() => context.putImageData(expectedData, 0.0, 0.0, 1.0, 1.0, 5.0),
throws);
});
});
@@ -249,17 +262,17 @@ main() {
test('default arc should be clockwise', () {
context.beginPath();
- final r = 10;
+ final r = 10.0;
// Center of arc.
- final cx = 20;
- final cy = 20;
+ final cx = 20.0;
+ final cy = 20.0;
// Arc centered at (20, 20) with radius 10 will go clockwise
// from (20 + r, 20) to (20, 20 + r), which is 1/4 of a circle.
- context.arc(cx, cy, r, 0, PI/2);
+ context.arc(cx, cy, r, 0.0, PI/2);
context.strokeStyle = 'green';
- context.lineWidth = 2;
+ context.lineWidth = 2.0;
context.stroke();
// Center should not be filled.
@@ -289,11 +302,11 @@ main() {
test('arc anticlockwise', () {
context.beginPath();
- final r = 10;
+ final r = 10.0;
// Center of arc.
- final cx = 20;
- final cy = 20;
+ final cx = 20.0;
+ final cy = 20.0;
// Arc centered at (20, 20) with radius 10 will go anticlockwise
// from (20 + r, 20) to (20, 20 + r), which is 3/4 of a circle.
// Because of the way arc work, when going anti-clockwise, the end points
@@ -302,7 +315,7 @@ main() {
context.arc(cx, cy, r, .1, PI/2 - .1, true);
context.strokeStyle = 'green';
- context.lineWidth = 2;
+ context.lineWidth = 2.0;
context.stroke();
// Center should not be filled.
@@ -340,7 +353,7 @@ main() {
var img = new ImageElement();
img.onLoad.listen(expectAsync1((_) {
- context.drawImage(img, 50, 50);
+ context.drawImage(img, 50.0, 50.0);
expectPixelFilled(50, 50);
expectPixelFilled(55, 55);
@@ -385,7 +398,7 @@ main() {
// Draw an image to the canvas from an image element and scale it.
test('with 9 params', () {
otherContext.fillStyle = "blue";
- otherContext.fillRect(5, 5, 5, 5);
+ otherContext.fillRect(5.0, 5.0, 5.0, 5.0);
var dataUrl = otherCanvas.toDataUrl('image/gif');
var img = new ImageElement();
@@ -483,7 +496,7 @@ main() {
test('with 3 params', () {
video.onCanPlay.listen(expectAsync1((_) {
- context.drawImage(video, 50, 50);
+ context.drawImage(video, 50.0, 50.0);
expectPixelFilled(50, 50);
expectPixelFilled(54, 54);
@@ -615,7 +628,7 @@ main() {
test('with 3 params', () {
// Draw an image to the canvas from a canvas element.
- context.drawImage(otherCanvas, 50, 50);
+ context.drawImage(otherCanvas, 50.0, 50.0);
expectPixelFilled(50, 50);
expectPixelFilled(55, 55);
@@ -640,7 +653,7 @@ main() {
test('with 9 params', () {
// Draw an image to the canvas from a canvas element.
otherContext.fillStyle = "blue";
- otherContext.fillRect(5, 5, 5, 5);
+ otherContext.fillRect(5.0, 5.0, 5.0, 5.0);
context.drawImageToRect(otherCanvas, new Rect(50, 50, 20, 20),
sourceRect: new Rect(2, 2, 6, 6));
@@ -660,7 +673,7 @@ main() {
});
test('createImageData', () {
- var imageData = context.createImageData(15, 15);
+ var imageData = context.createImageData(15.0, 15.0);
expect(imageData.width, 15);
expect(imageData.height, 15);
« no previous file with comments | « tests/html/canvas_test.dart ('k') | tests/html/css_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698