]> source.dussan.org Git - nextcloud-server.git/commitdiff
Added testArea for JS Unit tests
authorVincent Petry <pvince81@owncloud.com>
Thu, 6 Mar 2014 11:50:18 +0000 (12:50 +0100)
committerVincent Petry <pvince81@owncloud.com>
Thu, 6 Mar 2014 11:50:18 +0000 (12:50 +0100)
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

index b11932405806a10aae40ca8fea84090e4e7deb34..48dcb97ef769981a243ec0ac0c9384285e567259 100644 (file)
@@ -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();
        });
 })();