diff options
Diffstat (limited to 'toolkit/components/extensions/test/browser/browser_ext_themes_tab_selected.js')
-rw-r--r-- | toolkit/components/extensions/test/browser/browser_ext_themes_tab_selected.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/toolkit/components/extensions/test/browser/browser_ext_themes_tab_selected.js b/toolkit/components/extensions/test/browser/browser_ext_themes_tab_selected.js new file mode 100644 index 0000000000..3dd77ac92c --- /dev/null +++ b/toolkit/components/extensions/test/browser/browser_ext_themes_tab_selected.js @@ -0,0 +1,49 @@ +"use strict"; + +// This test checks whether applied WebExtension themes that attempt to change +// the background color of selected tab are applied correctly. + +add_task(async function test_tab_background_color_property() { + const TAB_BACKGROUND_COLOR = "#9400ff"; + let extension = ExtensionTestUtils.loadExtension({ + manifest: { + theme: { + colors: { + frame: ACCENT_COLOR, + tab_background_text: TEXT_COLOR, + tab_selected: TAB_BACKGROUND_COLOR, + }, + }, + }, + }); + + await extension.startup(); + + info("Checking selected tab color"); + + let openTab = document.querySelector(".tabbrowser-tab[visuallyselected]"); + let openTabBackground = openTab.querySelector(".tab-background"); + + let selectedTab = await BrowserTestUtils.openNewForegroundTab( + gBrowser, + "about:blank" + ); + let selectedTabBackground = selectedTab.querySelector(".tab-background"); + + let openTabColor = window + .getComputedStyle(openTabBackground) + .getPropertyValue("background-color"); + let selectedTabColor = window + .getComputedStyle(selectedTabBackground) + .getPropertyValue("background-color"); + + Assert.equal( + selectedTabColor, + "rgb(" + hexToRGB(TAB_BACKGROUND_COLOR).join(", ") + ")", + "Selected tab background color should be set." + ); + Assert.notEqual(openTabColor, selectedTabColor); + + gBrowser.removeTab(selectedTab); + await extension.unload(); +}); |