From 6bf0a5cb5034a7e684dcc3500e841785237ce2dd Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:32:43 +0200 Subject: Adding upstream version 1:115.7.0. Signed-off-by: Daniel Baumann --- .../browser_ext_tabs_move_window_multiple.js | 64 ++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 browser/components/extensions/test/browser/browser_ext_tabs_move_window_multiple.js (limited to 'browser/components/extensions/test/browser/browser_ext_tabs_move_window_multiple.js') diff --git a/browser/components/extensions/test/browser/browser_ext_tabs_move_window_multiple.js b/browser/components/extensions/test/browser/browser_ext_tabs_move_window_multiple.js new file mode 100644 index 0000000000..62fe12aeb4 --- /dev/null +++ b/browser/components/extensions/test/browser/browser_ext_tabs_move_window_multiple.js @@ -0,0 +1,64 @@ +/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* vim: set sts=2 sw=2 et tw=80: */ +"use strict"; + +add_task(async function () { + let extension = ExtensionTestUtils.loadExtension({ + manifest: { + permissions: ["tabs"], + }, + + async background() { + const URL = "http://example.com/"; + let mainWin = await browser.windows.getCurrent(); + let tab1 = await browser.tabs.create({ url: URL }); + let tab2 = await browser.tabs.create({ url: URL }); + + let newWin = await browser.windows.create({ url: [URL, URL] }); + browser.test.assertEq(newWin.tabs.length, 2, "New window has 2 tabs"); + let [tab3, tab4] = newWin.tabs; + + // move tabs in both windows to index 0 in a single call + await browser.tabs.move([tab2.id, tab4.id], { index: 0 }); + + tab1 = await browser.tabs.get(tab1.id); + browser.test.assertEq( + tab1.windowId, + mainWin.id, + "tab 1 is still in main window" + ); + + tab2 = await browser.tabs.get(tab2.id); + browser.test.assertEq( + tab2.windowId, + mainWin.id, + "tab 2 is still in main window" + ); + browser.test.assertEq(tab2.index, 0, "tab 2 moved to index 0"); + + tab3 = await browser.tabs.get(tab3.id); + browser.test.assertEq( + tab3.windowId, + newWin.id, + "tab 3 is still in new window" + ); + + tab4 = await browser.tabs.get(tab4.id); + browser.test.assertEq( + tab4.windowId, + newWin.id, + "tab 4 is still in new window" + ); + browser.test.assertEq(tab4.index, 0, "tab 4 moved to index 0"); + + await browser.tabs.remove([tab1.id, tab2.id]); + await browser.windows.remove(newWin.id); + + browser.test.notifyPass("tabs.move.multiple"); + }, + }); + + await extension.startup(); + await extension.awaitFinish("tabs.move.multiple"); + await extension.unload(); +}); -- cgit v1.2.3