Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

/* Any copyright is dedicated to the Public Domain.
"use strict";
/**
* Tests if Request-Cookies and Response-Cookies are sorted in Cookies tab.
*/
add_task(async function () {
const { monitor } = await initNetMonitor(SIMPLE_UNSORTED_COOKIES_SJS, {
requestCount: 1,
});
info("Starting test... ");
const { document, store, windowRequire } = monitor.panelWin;
const Actions = windowRequire("devtools/client/netmonitor/src/actions/index");
store.dispatch(Actions.batchEnable(false));
let wait = waitForNetworkEvents(monitor, 1);
await reloadBrowser();
await wait;
wait = waitForDOM(document, ".headers-overview");
EventUtils.sendMouseEvent(
{ type: "mousedown" },
document.querySelectorAll(".request-list-item")[0]
);
await wait;
EventUtils.sendMouseEvent(
{ type: "mousedown" },
document.querySelectorAll(".request-list-item")[0]
);
clickOnSidebarTab(document, "cookies");
info("Check if Request-Cookies and Response-Cookies are sorted");
const expectedLabelValues = [
"__proto__",
"httpOnly",
"value",
"bob",
"httpOnly",
"value",
"foo",
"httpOnly",
"value",
"tom",
"httpOnly",
"value",
"__proto__",
"bob",
"foo",
"tom",
];
const labelCells = document.querySelectorAll(".treeLabelCell");
labelCells.forEach(function (val, index) {
is(
val.innerText,
expectedLabelValues[index],
"Actual label value " +
val.innerText +
" not equal to expected label value " +
expectedLabelValues[index]
);
});
const lastItem = document.querySelector(
"#cookies-panel .properties-view tr.treeRow:last-child"
);
lastItem.scrollIntoView();
info("Checking for unwanted scrollbars appearing in the tree view");
const view = document.querySelector(
"#cookies-panel .properties-view .treeTable"
);
is(scrolledToBottom(view), true, "The view is not scrollable");
await teardown(monitor);
function scrolledToBottom(element) {
return element.scrollTop + element.clientHeight >= element.scrollHeight;
}
});