From e129f6845b8ec728455737e46cda872cc45f50c2 Mon Sep 17 00:00:00 2001 From: Vincent Petry <pvince81@owncloud.com> Date: Thu, 6 Mar 2014 12:50:18 +0100 Subject: [PATCH] Added testArea for JS Unit tests Added a testArea that is outside the viewport but still considered as visible from the jQuery code. The testArea is useful when: - tested code tries to access DOM elements using global ids - tested code is requiring some UI elements to be visible to activate themselves --- core/js/tests/specHelper.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/js/tests/specHelper.js b/core/js/tests/specHelper.js index b119324058..48dcb97ef7 100644 --- a/core/js/tests/specHelper.js +++ b/core/js/tests/specHelper.js @@ -68,9 +68,14 @@ window.oc_defaults = {}; // global setup for all tests (function setupTests() { var fakeServer = null, + $testArea = null, routesRequestStub; beforeEach(function() { + // test area for elements that need absolute selector access or measure widths/heights + // which wouldn't work for detached or hidden elements + $testArea = $('<div id="testArea" style="position: absolute; width: 1280px; height: 800px; top: -3000px; left: -3000px;"></div>'); + $('body').append($testArea); // enforce fake XHR, tests should not depend on the server and // must use fake responses for expected calls fakeServer = sinon.fakeServer.create(); @@ -101,6 +106,8 @@ window.oc_defaults = {}; // uncomment this to log requests // console.log(window.fakeServer.requests); fakeServer.restore(); + + $testArea.remove(); }); })(); -- GitLab