/* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ const MAX_PLACEABLE_LENGTH = 2500; add_setup(async function () { await SpecialPowers.pushPrefEnv({ set: [ ["test.aboutconfig.added", "=".repeat(MAX_PLACEABLE_LENGTH)], ["test.aboutconfig.long", "=".repeat(MAX_PLACEABLE_LENGTH + 1)], ], }); }); add_task(async function test_accessible_value() { await AboutConfigTest.withNewTab(async function () { for (let [name, expectHasUserValue] of [ [PREF_BOOLEAN_DEFAULT_TRUE, false], [PREF_BOOLEAN_USERVALUE_TRUE, true], ["test.aboutconfig.added", true], ]) { let span = this.getRow(name).valueCell.querySelector("span"); let expectedL10nId = expectHasUserValue ? "about-config-pref-accessible-value-custom" : "about-config-pref-accessible-value-default"; Assert.equal(span.getAttribute("data-l10n-id"), expectedL10nId); } // If the value is too long for localization, the state is not included. let span = this.getRow("test.aboutconfig.long").valueCell.querySelector( "span" ); Assert.ok(!span.hasAttribute("data-l10n-id")); Assert.equal( span.getAttribute("aria-label"), Preferences.get("test.aboutconfig.long") ); }); });