Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

/* Any copyright is dedicated to the Public Domain.
"use strict";
/**
* Test incomplete status-code search
*/
const REQUESTS = [
{ url: "sjs_status-codes-test-server.sjs?sts=400" },
{ url: "sjs_status-codes-test-server.sjs?sts=300" },
{ url: "sjs_status-codes-test-server.sjs?sts=304" },
];
add_task(async function () {
const { monitor } = await initNetMonitor(FILTERING_URL, { requestCount: 1 });
const { document, store, windowRequire } = monitor.panelWin;
const Actions = windowRequire("devtools/client/netmonitor/src/actions/index");
const { getDisplayedRequests } = windowRequire(
"devtools/client/netmonitor/src/selectors/index"
);
store.dispatch(Actions.batchEnable(false));
info("Starting test... ");
// Let the requests load completely before the incomplete search tests begin
// because we are searching for the status code in these requests.
const waitNetwork = waitForNetworkEvents(monitor, REQUESTS.length);
await performRequestsInContent(REQUESTS);
await waitNetwork;
document.querySelector(".devtools-filterinput").focus();
EventUtils.sendString("status-code:3");
let visibleItems = getDisplayedRequests(store.getState());
// Results will be updated asynchronously, so we should wait until
// displayed requests reach final state.
await waitUntil(() => {
visibleItems = getDisplayedRequests(store.getState());
return visibleItems.length === 2;
});
is(
Number(visibleItems[0].status),
303,
"First visible item has expected status"
);
is(
Number(visibleItems[1].status),
304,
"Second visible item has expected status"
);
await teardown(monitor);
});