Bug 1431306 - Return the MDN status list URL in getHTTPStatusCodeURL when statusCode does not have a dedicated page; r=nchevobbe

MozReview-Commit-ID: 5FWYgChM5le

--HG--
extra : rebase_source : a23168b7f92c5de6b717b1ce2a3e8ff540943c0a
This commit is contained in:
abhinav 2018-01-20 23:31:44 +05:30
Родитель de0cdedea7
Коммит 6bb0cfd19c
5 изменённых файлов: 63 добавлений и 4 удалений

Просмотреть файл

@ -10,6 +10,8 @@ DevToolsModules(
'panel.js'
)
XPCSHELL_TESTS_MANIFESTS += ['test/unit/xpcshell.ini']
BROWSER_CHROME_MANIFESTS += ['test/browser.ini']
with Files('**'):

Просмотреть файл

@ -126,6 +126,7 @@ const SUPPORTED_HTTP_CODES = [
"415",
"416",
"417",
"418",
"426",
"428",
"429",
@ -141,6 +142,7 @@ const SUPPORTED_HTTP_CODES = [
];
const MDN_URL = "https://developer.mozilla.org/docs/";
const MDN_STATUS_CODES_LIST_URL = `${MDN_URL}Web/HTTP/Status`;
const getGAParams = (panelId = "netmonitor") => {
return `?utm_source=mozilla&utm_medium=devtools-${panelId}&utm_campaign=default`;
};
@ -168,10 +170,11 @@ function getHeadersURL(header) {
* @return {string} The MDN URL for the HTTP status code, or null if not available.
*/
function getHTTPStatusCodeURL(statusCode, panelId) {
let idx = SUPPORTED_HTTP_CODES.indexOf(statusCode);
return idx > -1 ?
`${MDN_URL}Web/HTTP/Status/${SUPPORTED_HTTP_CODES[idx] + getGAParams(panelId)}`
: null;
return (
SUPPORTED_HTTP_CODES.includes(statusCode)
? `${MDN_URL}Web/HTTP/Status/${statusCode}`
: MDN_STATUS_CODES_LIST_URL
) + getGAParams(panelId);
}
/**

Просмотреть файл

@ -0,0 +1,6 @@
"use strict";
module.exports = {
// Extend from the common devtools xpcshell eslintrc config.
"extends": "../../../../.eslintrc.xpcshell.js"
};

Просмотреть файл

@ -0,0 +1,41 @@
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
// Test for mdn-utils
"use strict";
function run_test() {
let Cu = Components.utils;
const {require} = Cu.import("resource://devtools/shared/Loader.jsm", {});
const MDN_URL = "https://developer.mozilla.org/docs/";
const GTM_PARAMS_NM = "?utm_source=mozilla" +
"&utm_medium=devtools-netmonitor&utm_campaign=default";
const GTM_PARAMS_WC = "?utm_source=mozilla" +
"&utm_medium=devtools-webconsole&utm_campaign=default";
const {
getHeadersURL,
getHTTPStatusCodeURL,
getNetMonitorTimingsURL,
getPerformanceAnalysisURL
} = require("devtools/client/netmonitor/src/utils/mdn-utils");
info("Checking for supported headers");
equal(getHeadersURL("Accept"), `${MDN_URL}Web/HTTP/Headers/Accept${GTM_PARAMS_NM}`);
info("Checking for unsupported headers");
equal(getHeadersURL("Width"), null);
info("Checking for supported status code");
equal(getHTTPStatusCodeURL("200", "webconsole"),
`${MDN_URL}Web/HTTP/Status/200${GTM_PARAMS_WC}`);
info("Checking for unsupported status code");
equal(getHTTPStatusCodeURL("999", "webconsole"),
`${MDN_URL}Web/HTTP/Status${GTM_PARAMS_WC}`);
equal(getNetMonitorTimingsURL(),
`${MDN_URL}Tools/Network_Monitor${GTM_PARAMS_NM}#Timings`);
equal(getPerformanceAnalysisURL(),
`${MDN_URL}Tools/Network_Monitor${GTM_PARAMS_NM}#Performance_analysis`);
}

Просмотреть файл

@ -0,0 +1,7 @@
[DEFAULT]
tags = devtools
head =
firefox-appdir = browser
skip-if = toolkit == 'android'
[test_mdn-utils.js]