diff options
Diffstat (limited to '')
-rw-r--r-- | devtools/client/netmonitor/test/browser_net_json-nogrip.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/devtools/client/netmonitor/test/browser_net_json-nogrip.js b/devtools/client/netmonitor/test/browser_net_json-nogrip.js new file mode 100644 index 0000000000..6b00829f2f --- /dev/null +++ b/devtools/client/netmonitor/test/browser_net_json-nogrip.js @@ -0,0 +1,51 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +/** + * Tests if JSON responses with property 'type' are correctly rendered. + * (Reps rendering JSON responses should use `noGrip=true`). + */ +add_task(async function () { + const { tab, monitor } = await initNetMonitor( + JSON_BASIC_URL + "?name=nogrip", + { 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)); + + await performRequests(monitor, tab, 1); + + const onResponsePanelReady = waitForDOM( + document, + "#response-panel .data-header" + ); + + const onPropsViewReady = waitForDOM( + document, + "#response-panel .properties-view", + 1 + ); + + store.dispatch(Actions.toggleNetworkDetails()); + clickOnSidebarTab(document, "response"); + await Promise.all([onResponsePanelReady, onPropsViewReady]); + + const tabpanel = document.querySelector("#response-panel"); + const labels = tabpanel.querySelectorAll("tr .treeLabelCell .treeLabel"); + const values = tabpanel.querySelectorAll("tr .treeValueCell .objectBox"); + + is(labels[0].textContent, "obj", "The first json property name is correct."); + is( + values[0].textContent, + 'Object { type: "string" }', + "The first json property value is correct." + ); + + await teardown(monitor); +}); |