4 <script src="../../http/tests/inspector/inspector-test.js"></script>
14 function dumpMetrics()
16 return JSON.stringify({
17 screen: window.screen.width + "x" + window.screen.height,
18 position: window.screenX + "x" + window.screenY,
19 inner: window.innerWidth + "x" + window.innerHeight,
20 body: document.body.offsetWidth + "x" + document.body.offsetHeight,
21 dpr: window.devicePixelRatio
27 function getPageMetrics(callback)
29 InspectorTest.evaluateInPage("dumpMetrics()", parse);
33 callback(JSON.parse(json.value));
39 function applyEmulationAndCheckMetrics(deviceScaleFactor, callback)
41 InspectorTest.addResult("Overriding device scale factor: " + deviceScaleFactor);
42 PageAgent.invoke_setDeviceMetricsOverride({width: 0, height: 0, deviceScaleFactor: deviceScaleFactor, emulateViewport: false, fitWindow: false}, getPageMetrics.bind(null, check));
44 function check(metrics)
46 if (metrics.screen !== initialMetrics.screen)
47 InspectorTest.addResult("Wrong screen size: " + metrics.screen + " instead of " + initialMetrics.screen);
48 if (metrics.position !== initialMetrics.position)
49 InspectorTest.addResult("Wrong screen position: " + metrics.position + " instead of " + initialMetrics.position);
50 if (metrics.inner !== initialMetrics.inner)
51 InspectorTest.addResult("Wrong window size: " + metrics.inner + " instead of " + initialMetrics.inner);
52 if (metrics.body !== initialMetrics.body)
53 InspectorTest.addResult("Wrong body size: " + metrics.body + " instead of " + initialMetrics.body);
54 if (deviceScaleFactor)
55 InspectorTest.addResult("Got device scale factor: " + metrics.dpr);
60 function saveInitialMetrics(callback)
64 function save(metrics)
66 initialMetrics = metrics;
71 var complete = InspectorTest.completeTest.bind(InspectorTest);
72 var reset = applyEmulationAndCheckMetrics.bind(null, 0, complete);
73 var check3 = applyEmulationAndCheckMetrics.bind(null, 3, reset);
74 var check2 = applyEmulationAndCheckMetrics.bind(null, 2, check3);
75 var check1 = applyEmulationAndCheckMetrics.bind(null, 1, check2);
76 saveInitialMetrics(check1);
81 <body onload="runTest()">
83 Tests that overriding only device scale factor does not affect any other value.