Bug 1316126 - Example test with _endRemoveTab infinite loop draft
authorJ. Ryan Stinnett <jryans@gmail.com>
Tue, 08 Nov 2016 16:20:47 -0600
changeset 435659 42e38c4023c5ef5a8de62c9b05366f7c1fab34b0
parent 435658 1eee7a9a3328c36ad8404214d8b9c35c35678675
child 536342 302ace20dd124d9554c0e3d0d8a205a89b836076
push id35079
push userbmo:jryans@gmail.com
push dateTue, 08 Nov 2016 22:21:52 +0000
bugs1316126
milestone52.0a1
Bug 1316126 - Example test with _endRemoveTab infinite loop MozReview-Commit-ID: LeQgitOqbmC
browser/base/content/test/general/browser.ini
browser/base/content/test/general/browser_endRemoveTab_loop.js
--- a/browser/base/content/test/general/browser.ini
+++ b/browser/base/content/test/general/browser.ini
@@ -502,8 +502,9 @@ skip-if = !e10s || !crashreporter
 [browser_aboutTabCrashed_showForm.js]
 skip-if = !e10s || !crashreporter
 [browser_aboutTabCrashed_withoutDump.js]
 skip-if = !e10s
 [browser_csp_block_all_mixedcontent.js]
 tags = mcb
 [browser_newwindow_focus.js]
 skip-if = (os == "linux" && !e10s) # Bug 1263254 - Perma fails on Linux without e10s for some reason.
+[browser_endRemoveTab_loop.js]
new file mode 100644
--- /dev/null
+++ b/browser/base/content/test/general/browser_endRemoveTab_loop.js
@@ -0,0 +1,19 @@
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+add_task(function* () {
+  gBrowser.addTab("about:blank", {
+    skipAnimation: true,
+  });
+
+  let tab1 = gBrowser.tabs[0];
+  let tab2 = gBrowser.tabs[1];
+
+  tab1.addEventListener("TabClose", () => {
+    gBrowser.removeTab(tab2);
+  }, { once: true });
+
+  gBrowser.removeTab(tab1);
+
+  ok(true, "Completed test without getting trapped in an infinite loop");
+})