Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test gets skipped with pattern: os == 'android'
- Manifest: devtools/server/tests/chrome/chrome.toml
<!DOCTYPE HTML>
<html>
<!--
-->
<head>
<meta charset="utf-8">
<title>Mozilla Bug</title>
</head>
<body>
<pre id="test">
<script>
"use strict";
window.onload = function() {
const {require} = ChromeUtils.importESModule("resource://devtools/shared/loader/Loader.sys.mjs");
const {DevToolsClient} = require("devtools/client/devtools-client");
const {DevToolsServer} = require("devtools/server/devtools-server");
SimpleTest.waitForExplicitFinish();
DevToolsServer.init();
DevToolsServer.registerAllActors();
const client = new DevToolsClient(DevToolsServer.connectPipe());
client.connect().then(function onConnect() {
return client.mainRoot.getFront("device");
}).then(function(d) {
let desc;
const appInfo = Services.appinfo;
const utils = window.windowUtils;
const localDesc = {
appid: appInfo.ID,
vendor: appInfo.vendor,
name: appInfo.name,
version: appInfo.version,
appbuildid: appInfo.appBuildID,
platformbuildid: appInfo.platformBuildID,
platformversion: appInfo.platformVersion,
geckobuildid: appInfo.platformBuildID,
geckoversion: appInfo.platformVersion,
useragent: window.navigator.userAgent,
locale: Services.locale.appLocaleAsBCP47,
os: appInfo.OS,
processor: appInfo.XPCOMABI.split("-")[0],
compiler: appInfo.XPCOMABI.split("-")[1],
dpi: utils.displayDPI,
width: window.screen.width,
height: window.screen.height,
};
function checkValues() {
for (const key in localDesc) {
is(desc[key], localDesc[key], "valid field (" + key + ")");
}
const currProfD = Services.dirsvc.get("ProfD", Ci.nsIFile);
const profileDir = currProfD.path;
ok(profileDir.includes(!!desc.profile.length && desc.profile),
"valid profile name");
client.close().then(() => {
DevToolsServer.destroy();
SimpleTest.finish();
});
}
d.getDescription().then(function(v) {
desc = v;
}).then(checkValues);
});
};
</script>
</pre>
</body>
</html>