diff options
Diffstat (limited to 'mobile/android/tests/browser/chrome/test_desktop_useragent.html')
-rw-r--r-- | mobile/android/tests/browser/chrome/test_desktop_useragent.html | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/mobile/android/tests/browser/chrome/test_desktop_useragent.html b/mobile/android/tests/browser/chrome/test_desktop_useragent.html new file mode 100644 index 000000000..cfa82659a --- /dev/null +++ b/mobile/android/tests/browser/chrome/test_desktop_useragent.html @@ -0,0 +1,75 @@ +<!DOCTYPE HTML> +<html> +<!-- +https://bugzilla.mozilla.org/show_bug.cgi?id=1157319 +Migrated from Robocop: https://bugzilla.mozilla.org/show_bug.cgi?id=1184186 +--> +<head> + <meta charset="utf-8"> + <title>Test for Bug 1157319</title> + <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script> + <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SpawnTask.js"></script> + <link rel="stylesheet" type="text/css" href="chrome://global/skin"/> + <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"/> + <script type="application/javascript" src="head.js"></script> + <script type="application/javascript;version=1.7"> + + "use strict"; + + const { classes: Cc, interfaces: Ci, utils: Cu } = Components; + + Cu.import("resource://gre/modules/Services.jsm"); + + // Load a custom sjs script that echos our "User-Agent" header back at us + const TestURI = Services.io.newURI("http://mochi.test:8888/chrome/mobile/android/tests/browser/chrome/desktopmode_user_agent.sjs", null, null); + + add_task(function* test_desktopmode() { + let chromeWin = Services.wm.getMostRecentWindow("navigator:browser"); + let BrowserApp = chromeWin.BrowserApp; + + // Add a new 'desktop mode' tab with our test page + let desktopTab = BrowserApp.addTab(TestURI.spec, { selected: true, parentId: BrowserApp.selectedTab.id, desktopMode: true }); + let desktopBrowser = desktopTab.browser; + yield promiseBrowserEvent(desktopBrowser, "load"); + + // Some debugging + info("desktop: " + desktopBrowser.contentWindow.navigator.userAgent); + info("desktop: " + desktopBrowser.contentDocument.body.innerHTML); + + // Check the server UA and the navigator UA for 'desktop' + ok(desktopBrowser.contentWindow.navigator.userAgent.indexOf("Linux x86_64") != -1, "window.navigator.userAgent has 'Linux' in it"); + ok(desktopBrowser.contentDocument.body.innerHTML.indexOf("Linux x86_64") != -1, "HTTP header 'User-Agent' has 'Linux' in it"); + + BrowserApp.closeTab(desktopTab); + + // Add a new 'mobile mode' tab with our test page + let mobileTab = BrowserApp.addTab(TestURI.spec, { selected: true, parentId: BrowserApp.selectedTab.id }); + let mobileBrowser = mobileTab.browser; + yield promiseBrowserEvent(mobileBrowser, "load"); + + // Some debugging + info("mobile: " + mobileBrowser.contentWindow.navigator.userAgent); + info("mobile: " + mobileBrowser.contentDocument.body.innerHTML); + + // Check the server UA and the navigator UA for 'mobile' + // We only check for 'Android' because we don't know the version or if it's phone or tablet + ok(mobileBrowser.contentWindow.navigator.userAgent.indexOf("Android") != -1, "window.navigator.userAgent has 'Android' in it"); + ok(mobileBrowser.contentDocument.body.innerHTML.indexOf("Android") != -1, "HTTP header 'User-Agent' has 'Android' in it"); + + BrowserApp.closeTab(mobileTab); + }); + + </script> +</head> +<body> +<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1157319">Mozilla Bug 1157319</a> +<br> +<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1184186">Migrated from Robocop testDesktopUseragent</a> +<p id="display"></p> +<div id="content" style="display: none"> + +</div> +<pre id="test"> +</pre> +</body> +</html> |