Files
Benoit Goupilleau fbeca9f2f9 Bug 2059673 - Display JSON Lines responses as a tree in the Netmonitor r=devtools-reviewers,fluent-reviewers,jdescottes,bolsson
handleJSONResponse() gates on /\bjson/, which matches application/jsonl,
text/jsonl and application/jsonlines, so those responses were handed to
parseJSON(), JSON.parse() choked on the second line and the panel reported
a SyntaxError for a perfectly valid document. application/x-ndjson has no
word boundary before "json" and fell through to raw text entirely.

Detect JSON Lines the same way the JSON Viewer's sniffer does - from the
content type, or from a .jsonl file extension when the served type doesn't
say so - and parse it with the shared parseJsonl(), which yields one entry
per non-blank line. PropertiesView renders those as independently
collapsible roots already; a line which isn't valid JSON is displayed
inline as an error rather than hiding the rest of the document.

Also decode base64 payloads for application/vnd.mozilla.jsonlines.view,
which the existing JSON Viewer check missed, and leave the raw view
unhighlighted, since CodeMirror's JSON mode flags every line but the first.

Differential Revision: https://phabricator.services.mozilla.com/D320919
2026-09-02 14:15:30 +00:00

60 lines
1.8 KiB
TOML

[DEFAULT]
tags = "devtools"
subsuite = "devtools"
support-files = [
"sjs_slow-response-test-server.sjs",
"test-console.html",
"test-image.png",
"test-image.png^headers^",
"test-network-exceptions.html",
"test-network-request.html",
"test-network.html",
"testscript.js",
# head.js dependencies:
"head.js",
"shared-head.js", # Required by head.js
"!/devtools/client/shared/test/shared-head.js", # Required by head.js
"!/devtools/client/debugger/test/mochitest/shared-head.js", # Required by head.js
"!/devtools/client/shared/test/highlighter-test-actor.js", # Required by /devtools/client/shared/test/shared-head.js
]
["browser_webconsole_network_attach.js"]
["browser_webconsole_network_exceptions.js"]
["browser_webconsole_network_file_uri.js"]
["browser_webconsole_network_message_close_on_escape.js"]
["browser_webconsole_network_message_ctrl_click.js"]
["browser_webconsole_network_messages_after_target_switching.js"]
["browser_webconsole_network_messages_expand.js"]
["browser_webconsole_network_messages_expand_before_updates.js"]
["browser_webconsole_network_messages_html_preview.js"]
["browser_webconsole_network_messages_jsonl.js"]
["browser_webconsole_network_messages_openinnet.js"]
["browser_webconsole_network_messages_resend_request.js"]
["browser_webconsole_network_messages_stacktrace_console_initiated_request.js"]
["browser_webconsole_network_messages_status_code.js"]
fail-if = [
"a11y_checks", # Bug 1849028 clicked element may not be focusable and/or labeled
]
["browser_webconsole_network_requests_from_chrome.js"]
skip-if = [
"os == 'linux' && os_version == '24.04' && arch == 'x86_64' && display == 'x11' && debug && http3", # Bug 1829298
]
["browser_webconsole_network_reset_filter.js"]
["browser_webconsole_network_unicode.js"]