summaryrefslogtreecommitdiffstats
path: root/toolkit/components/viewsource/test/browser/browser_srcdoc.js
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/viewsource/test/browser/browser_srcdoc.js')
-rw-r--r--toolkit/components/viewsource/test/browser/browser_srcdoc.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/toolkit/components/viewsource/test/browser/browser_srcdoc.js b/toolkit/components/viewsource/test/browser/browser_srcdoc.js
new file mode 100644
index 0000000000..fbb07dd0ad
--- /dev/null
+++ b/toolkit/components/viewsource/test/browser/browser_srcdoc.js
@@ -0,0 +1,28 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/
+ */
+
+const frameSource = `<a href="about:mozilla">good</a>`;
+const source = `<html><iframe srcdoc='${frameSource}' id="f"></iframe></html>`;
+
+add_task(async function () {
+ let url = `data:text/html,${source}`;
+ await BrowserTestUtils.withNewTab({ gBrowser, url }, checkFrameSource);
+});
+
+async function checkFrameSource() {
+ let sourceTab = await openViewFrameSourceTab("#f");
+ registerCleanupFunction(function () {
+ gBrowser.removeTab(sourceTab);
+ });
+
+ let browser = gBrowser.selectedBrowser;
+ let textContent = await SpecialPowers.spawn(browser, [], async function () {
+ return content.document.body.textContent;
+ });
+ is(textContent, frameSource, "Correct content loaded");
+ let id = await SpecialPowers.spawn(browser, [], async function () {
+ return content.document.body.id;
+ });
+ is(id, "viewsource", "View source mode enabled");
+}