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

Unified Diff: LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage.html

Issue 20748002: Blob creation methods for ImageBitmap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Read blob as ArrayBuffer. Refactor into ImageBitmapFactories. Created 7 years, 4 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
Index: LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage.html
diff --git a/LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage.html b/LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage.html
index 9635e200b52d8e5cfdcd3f4a88e2ea5bfef8b05b..732ff3372266edae135586140e158512882e2e0c 100644
--- a/LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage.html
+++ b/LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage.html
@@ -25,6 +25,11 @@ function shouldBeType(expression, className)
shouldBe("jsWrapperClass(" + expression + ")", "'" + className + "'");
}
+function shouldNotBeCalled() {
+ testFailed("createImageBitmap promise rejected.");
+ finishJSTest();
+}
+
function shouldBeRed(x, y) {
d = ctx.getImageData(x, y, 1, 1).data;
shouldBeTrue("d[0] == 255");
@@ -92,7 +97,7 @@ var elements;
var imageWidth = 20;
var imageHeight = 20;
-// Create auxiliary canvas to draw to and create an image from.
+// Draw to an auxillary canvas.
var aCanvas = document.createElement("canvas");
aCanvas.width = imageWidth;
aCanvas.height = imageHeight;
@@ -106,13 +111,14 @@ var ctx = canvas.getContext("2d");
image = new Image();
image.onload = imageLoaded;
-image.src = aCanvas.toDataURL(); // set a data URI of the base64 enconded image as the source
+image.src = aCanvas.toDataURL();
var imageLoaded = false;
var imageBitmapLoaded = false;
+var blobLoaded = false;
function imageLoaded() {
- createImageBitmap(image).then(imageBitmapLoadedCallback);
+ createImageBitmap(image).then(imageBitmapLoadedCallback, shouldNotBeCalled);
d = aCtx.getImageData(0, 0, 20, 20);
imageLoaded = true;
loaded();
@@ -134,10 +140,20 @@ function imageBitmapLoadedCallback(imageBitmap) {
loaded();
}
+var xhr = new XMLHttpRequest();
+xhr.open("GET", 'resources/pattern.png');
+xhr.responseType = 'blob';
+xhr.send();
+xhr.onload = function() {
+ blob = xhr.response;
+ blobLoaded = true;
+ loaded();
+}
+
function loaded() {
- if (imageLoaded && imageBitmapLoaded) {
+ if (imageLoaded && imageBitmapLoaded && blobLoaded) {
// check all of these elements
- elements = [image, aCanvas, d, aCtx, testBitmap];
+ elements = [image, aCanvas, d, aCtx, testBitmap, blob];
// wait for callback to finish before each check to ensure synchronous behavior
nextCheck(0);
@@ -172,10 +188,7 @@ function nextCheck(elementIndex) {
checkEmpty(imageBitmaps.empty);
checkEmpty(imageBitmaps.emptyTwo);
nextCheck(elementIndex + 1);
- }, function() {
- testFailed("createImageBitmap promise rejected.");
- finishJSTest();
- });
+ }, shouldNotBeCalled);
}
function checkNoCrop(imageBitmap) {
« no previous file with comments | « no previous file | LayoutTests/fast/canvas/canvas-createImageBitmap-drawImage-expected.txt » ('j') | Source/core/page/DOMWindow.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698