summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/forms/browser_selectpopup_xhtml.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/forms/browser_selectpopup_xhtml.js')
-rw-r--r--browser/base/content/test/forms/browser_selectpopup_xhtml.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/browser/base/content/test/forms/browser_selectpopup_xhtml.js b/browser/base/content/test/forms/browser_selectpopup_xhtml.js
new file mode 100644
index 0000000000..091649be89
--- /dev/null
+++ b/browser/base/content/test/forms/browser_selectpopup_xhtml.js
@@ -0,0 +1,36 @@
+const PAGE = `<?xml version="1.0"?>
+<html id="main-window"
+ xmlns:html="http://www.w3.org/1999/xhtml"
+ xmlns="http://www.w3.org/1999/xhtml">
+<head/>
+<body>
+ <html:select>
+ <html:option>abc</html:option>
+ <html:optgroup>
+ <html:option>defg</html:option>
+ </html:optgroup>
+ </html:select>
+</body>
+</html>
+`;
+
+add_task(async function () {
+ const url = "data:application/xhtml+xml," + encodeURI(PAGE);
+ await BrowserTestUtils.withNewTab(
+ {
+ gBrowser,
+ url,
+ },
+ async function (browser) {
+ let popup = await openSelectPopup("click");
+ let menuitems = popup.querySelectorAll("menuitem");
+ is(menuitems.length, 2, "Should've properly detected two menu items");
+ is(menuitems[0].textContent, "abc", "Option text should be correct");
+ is(menuitems[1].textContent, "defg", "Second text should be correct");
+ ok(
+ !!popup.querySelector("menucaption"),
+ "Should've created a caption for the optgroup"
+ );
+ }
+ );
+});