| OLD | NEW |
| (Empty) |
| 1 <!-- | |
| 2 Copyright 2014 The Chromium Authors. All rights reserved. | |
| 3 Use of this source code is governed by a BSD-style license that can be | |
| 4 found in the LICENSE file. | |
| 5 --> | |
| 6 | |
| 7 <link rel="import" href="ct-results-comparison-zoomer.html"> | |
| 8 | |
| 9 <link rel="import" href="../base/ct-canvas-2d-context-mock.html"> | |
| 10 | |
| 11 <script> | |
| 12 (function () { | |
| 13 | |
| 14 module("ct-results-comparison-zoomer"); | |
| 15 | |
| 16 asyncTest("no-position", 2, function() { | |
| 17 var zoomer = document.createElement('ct-results-comparison-zoomer'); | |
| 18 // FIXME: This should set zoomer.position instead, but there's no way | |
| 19 // to get between the microtask and requestAnimationFrame to verify the | |
| 20 // behavior. | |
| 21 zoomer.positionChanged(); | |
| 22 ok(zoomer._drawScheduled); | |
| 23 | |
| 24 requestAnimationFrame(function() { | |
| 25 ok(!zoomer._drawScheduled); | |
| 26 start(); | |
| 27 }); | |
| 28 }); | |
| 29 | |
| 30 test("draw", 3, function() { | |
| 31 // Hard to verify correct behavior here, but at least make sure the | |
| 32 // code executes without throwing errors. | |
| 33 | |
| 34 var zoomer = document.createElement('ct-results-comparison-zoomer'); | |
| 35 | |
| 36 try { | |
| 37 zoomer._drawAll(); | |
| 38 ok(true); | |
| 39 } catch(e) { | |
| 40 ok(false); | |
| 41 } | |
| 42 | |
| 43 // FIXME: Use a proper model class instead of a dumb object. | |
| 44 zoomer.position = {x: 0, y: 0}; | |
| 45 try { | |
| 46 zoomer._drawAll(); | |
| 47 ok(true); | |
| 48 } catch(e) { | |
| 49 ok(false); | |
| 50 } | |
| 51 | |
| 52 try { | |
| 53 zoomer._draw(zoomer.$.diffZoomer); | |
| 54 ok(true); | |
| 55 } catch(e) { | |
| 56 ok(false); | |
| 57 } | |
| 58 }); | |
| 59 | |
| 60 asyncTest("drawCanvas", 1, function() { | |
| 61 var zoomer = document.createElement('ct-results-comparison-zoomer'); | |
| 62 zoomer.position = {x: 0.2, y: 0.5}; | |
| 63 | |
| 64 requestAnimationFrame(function() { | |
| 65 var canvasContext = new CTCanvas2dContextMock(); | |
| 66 zoomer._drawCanvas(canvasContext, zoomer.$.diffZoomer); | |
| 67 | |
| 68 var expectedContext = new CTCanvas2dContextMock(); | |
| 69 expectedContext.imageSmoothingEnabled = false; | |
| 70 expectedContext.translate(-960, -1800); | |
| 71 expectedContext.strokeRect(-1.5, -1.5, 4802, 3602); | |
| 72 expectedContext.scale(6, 6); | |
| 73 expectedContext.drawImage(zoomer.shadowRoot.querySelector('img'), 0, 0); | |
| 74 deepEqual(canvasContext, expectedContext); | |
| 75 start(); | |
| 76 }); | |
| 77 }); | |
| 78 | |
| 79 })() | |
| 80 </script> | |
| OLD | NEW |