/* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; const VALID_JSON_URL = URL_ROOT + "valid_json.json"; const INVALID_JSON_URL = URL_ROOT + "invalid_json.json"; const prettyPrintButtonClass = ".textPanelBox .toolbar button.prettyprint"; add_task(async function () { info("Test 'Pretty Print' button disappears on parsing invalid JSON"); const count = await testPrettyPrintButton(INVALID_JSON_URL); is(count, 0, "There must be no pretty-print button for invalid json"); }); add_task(async function () { info("Test 'Pretty Print' button is present on parsing valid JSON"); const count = await testPrettyPrintButton(VALID_JSON_URL); is(count, 1, "There must be pretty-print button for valid json"); }); async function testPrettyPrintButton(url) { await addJsonViewTab(url); await selectJsonViewContentTab("rawdata"); info("Switched to Raw Data tab."); const count = await getElementCount(prettyPrintButtonClass); return count; }