From 0613d18894280549133315ee1251bd350d1ec872 Mon Sep 17 00:00:00 2001 From: Samuel Mannehed Date: Fri, 21 Apr 2017 15:23:18 +0200 Subject: [PATCH] Fix panning test for high DPI devices There is a drag-threshold in the panning code which the tests didn't account for. This caused the tests to fail when window.devicePixelRatio was higher than 1. --- tests/test.rfb.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/tests/test.rfb.js b/tests/test.rfb.js index dd658e04..88878c29 100644 --- a/tests/test.rfb.js +++ b/tests/test.rfb.js @@ -1988,19 +1988,24 @@ describe('Remote Frame Buffer Protocol Client', function() { }); it('if enabled, viewportDragging should occur on mouse movement while a button is down', function () { + var oldX = 123; + var oldY = 109; + var newX = 123 + 11 * window.devicePixelRatio; + var newY = 109 + 4 * window.devicePixelRatio; + client._viewportDrag = true; client._viewportDragging = true; client._viewportHasMoved = false; - client._viewportDragPos = { x: 23, y: 9 }; + client._viewportDragPos = { x: oldX, y: oldY }; client._display.viewportChangePos = sinon.spy(); - client._mouse._onMouseMove(10, 4); + client._mouse._onMouseMove(newX, newY); expect(client._viewportDragging).to.be.true; expect(client._viewportHasMoved).to.be.true; - expect(client._viewportDragPos).to.deep.equal({ x: 10, y: 4 }); + expect(client._viewportDragPos).to.deep.equal({ x: newX, y: newY }); expect(client._display.viewportChangePos).to.have.been.calledOnce; - expect(client._display.viewportChangePos).to.have.been.calledWith(13, 5); + expect(client._display.viewportChangePos).to.have.been.calledWith(oldX - newX, oldY - newY); }); });