Update the hidpi test to work on a wider variety of platforms (e.g. when running...
[dygraphs.git] / auto_tests / tests / hidpi.js
1 /**
2 * @fileoverview Tests for window.devicePixelRatio > 1.
3 *
4 * @author danvdk@gmail.com (Dan Vanderkam)
5 */
6 var hidpiTestCase = TestCase("hidpi");
7
8 var savePixelRatio;
9 hidpiTestCase.prototype.setUp = function() {
10 savePixelRatio = window.devicePixelRatio;
11 window.devicePixelRatio = 2;
12
13 document.body.innerHTML = "<div id='graph'></div>";
14 };
15
16 hidpiTestCase.prototype.tearDown = function() {
17 window.devicePixelRatio = savePixelRatio;
18 };
19
20 hidpiTestCase.prototype.testDoesntCreateScrollbars = function() {
21 var sw = document.body.scrollWidth;
22 var cw = document.body.clientWidth;
23
24 var graph = document.getElementById("graph");
25 graph.style.width = "70%"; // more than half.
26 graph.style.height = "200px";
27
28 var opts = {};
29 var data = "X,Y\n" +
30 "0,-1\n" +
31 "1,0\n" +
32 "2,1\n" +
33 "3,0\n"
34 ;
35
36 var g = new Dygraph(graph, data, opts);
37
38 // Adding the graph shouldn't cause the width of the page to change.
39 // (essentially, we're checking that we don't end up with a scrollbar)
40 // See http://stackoverflow.com/a/2146905/388951
41 assertEquals(cw, document.body.clientWidth);
42 assertEquals(sw, document.body.scrollWidth);
43 };
44