summaryrefslogtreecommitdiffstats
path: root/devtools/client/responsive/test/xpcshell/test_change_device.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/responsive/test/xpcshell/test_change_device.js')
-rw-r--r--devtools/client/responsive/test/xpcshell/test_change_device.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/devtools/client/responsive/test/xpcshell/test_change_device.js b/devtools/client/responsive/test/xpcshell/test_change_device.js
new file mode 100644
index 0000000000..3fe4a863ec
--- /dev/null
+++ b/devtools/client/responsive/test/xpcshell/test_change_device.js
@@ -0,0 +1,50 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+// Test changing the viewport device.
+
+const {
+ addDevice,
+ addDeviceType,
+} = require("devtools/client/responsive/actions/devices");
+const {
+ addViewport,
+ changeDevice,
+} = require("devtools/client/responsive/actions/viewports");
+
+add_task(async function() {
+ const store = Store();
+ const { getState, dispatch } = store;
+
+ dispatch(addDeviceType("phones"));
+ dispatch(
+ addDevice(
+ {
+ name: "Firefox OS Flame",
+ width: 320,
+ height: 570,
+ pixelRatio: 1.5,
+ userAgent: "Mozilla/5.0 (Mobile; rv:39.0) Gecko/39.0 Firefox/39.0",
+ touch: true,
+ firefoxOS: true,
+ os: "fxos",
+ },
+ "phones"
+ )
+ );
+ dispatch(addViewport());
+
+ let viewport = getState().viewports[0];
+ equal(viewport.device, "", "Default device is unselected");
+
+ dispatch(changeDevice(0, "Firefox OS Flame", "phones"));
+
+ viewport = getState().viewports[0];
+ equal(
+ viewport.device,
+ "Firefox OS Flame",
+ "Changed to Firefox OS Flame device"
+ );
+});