| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 var allTests = [ | 5 var allTests = [ |
| 6 function testGetImageData() { | 6 function testGetImageData() { |
| 7 var image = rootNode.find({ role: RoleType.image }); | 7 var image = rootNode.find({ role: RoleType.image }); |
| 8 image.addEventListener(EventType.imageFrameUpdated, function() { | 8 image.addEventListener(EventType.imageFrameUpdated, function() { |
| 9 assertEq(image.imageDataUrl.substr(0, 22), 'data:image/png;base64,'); | 9 assertEq(image.imageDataUrl.substr(0, 22), 'data:image/png;base64,'); |
| 10 var imgElement = document.createElement('img'); | 10 var imgElement = document.createElement('img'); |
| 11 imgElement.src = image.imageDataUrl; | 11 imgElement.src = image.imageDataUrl; |
| 12 var canvas = document.createElement('canvas'); | 12 var canvas = document.createElement('canvas'); |
| 13 canvas.setAttribute('width', 2); | 13 canvas.setAttribute('width', 2); |
| 14 canvas.setAttribute('height', 3); | 14 canvas.setAttribute('height', 3); |
| 15 var context = canvas.getContext('2d'); | 15 var context = canvas.getContext('2d'); |
| 16 context.drawImage(imgElement, 0, 0); | 16 imgElement.onload = function() { |
| 17 var imageData = context.getImageData(0, 0, 2, 3); | 17 context.drawImage(imgElement, 0, 0); |
| 18 // Check image data in RGBA format. | 18 var imageData = context.getImageData(0, 0, 2, 3); |
| 19 // Top row: red | 19 // Check image data in RGBA format. |
| 20 assertEq(imageData.data[0], 0xFF); | 20 // Top row: red |
| 21 assertEq(imageData.data[1], 0x00); | 21 assertEq(imageData.data[0], 0xFF); |
| 22 assertEq(imageData.data[2], 0x00); | 22 assertEq(imageData.data[1], 0x00); |
| 23 assertEq(imageData.data[3], 0xFF); | 23 assertEq(imageData.data[2], 0x00); |
| 24 assertEq(imageData.data[4], 0xFF); | 24 assertEq(imageData.data[3], 0xFF); |
| 25 assertEq(imageData.data[5], 0x00); | 25 assertEq(imageData.data[4], 0xFF); |
| 26 assertEq(imageData.data[6], 0x00); | 26 assertEq(imageData.data[5], 0x00); |
| 27 assertEq(imageData.data[7], 0xFF); | 27 assertEq(imageData.data[6], 0x00); |
| 28 // Middle row: green | 28 assertEq(imageData.data[7], 0xFF); |
| 29 assertEq(imageData.data[8], 0x00); | 29 // Middle row: green |
| 30 assertEq(imageData.data[9], 0xFF); | 30 assertEq(imageData.data[8], 0x00); |
| 31 assertEq(imageData.data[10], 0x00); | 31 assertEq(imageData.data[9], 0xFF); |
| 32 assertEq(imageData.data[11], 0xFF); | 32 assertEq(imageData.data[10], 0x00); |
| 33 assertEq(imageData.data[12], 0x00); | 33 assertEq(imageData.data[11], 0xFF); |
| 34 assertEq(imageData.data[13], 0xFF); | 34 assertEq(imageData.data[12], 0x00); |
| 35 assertEq(imageData.data[14], 0x00); | 35 assertEq(imageData.data[13], 0xFF); |
| 36 assertEq(imageData.data[15], 0xFF); | 36 assertEq(imageData.data[14], 0x00); |
| 37 // Last row: blue | 37 assertEq(imageData.data[15], 0xFF); |
| 38 assertEq(imageData.data[16], 0x00); | 38 // Last row: blue |
| 39 assertEq(imageData.data[17], 0x00); | 39 assertEq(imageData.data[16], 0x00); |
| 40 assertEq(imageData.data[18], 0xFF); | 40 assertEq(imageData.data[17], 0x00); |
| 41 assertEq(imageData.data[19], 0xFF); | 41 assertEq(imageData.data[18], 0xFF); |
| 42 assertEq(imageData.data[20], 0x00); | 42 assertEq(imageData.data[19], 0xFF); |
| 43 assertEq(imageData.data[21], 0x00); | 43 assertEq(imageData.data[20], 0x00); |
| 44 assertEq(imageData.data[22], 0xFF); | 44 assertEq(imageData.data[21], 0x00); |
| 45 assertEq(imageData.data[23], 0xFF); | 45 assertEq(imageData.data[22], 0xFF); |
| 46 chrome.test.succeed(); | 46 assertEq(imageData.data[23], 0xFF); |
| 47 chrome.test.succeed(); |
| 48 }; |
| 47 }, true); | 49 }, true); |
| 48 image.getImageData(0, 0); | 50 image.getImageData(0, 0); |
| 49 } | 51 } |
| 50 ]; | 52 ]; |
| 51 | 53 |
| 52 setUpAndRunTests(allTests, 'image_data.html'); | 54 setUpAndRunTests(allTests, 'image_data.html'); |
| OLD | NEW |