test: Added tests for tab group expand and collapse, b=closes #9885, c=tabs, folders, tests, workspaces

This commit is contained in:
Mr. M
2025-08-14 18:00:13 +02:00
parent 4a48d11b74
commit 4e2dfd8a13
8 changed files with 189 additions and 108 deletions

View File

@@ -4,3 +4,6 @@
["browser_folder_create.js"]
["browser_folder_subfolder.js"]
["browser_folder_basic_toggle.js"]
["browser_folder_issue_9885.js"]

View File

@@ -0,0 +1,23 @@
/* Any copyright is dedicated to the Public Domain.
https://creativecommons.org/publicdomain/zero/1.0/ */
'use strict';
add_task(async function test_Basic_Toggle() {
const folder = await gZenFolders.createFolder([], {
renameFolder: false,
label: 'subfolder',
});
ok(!folder.collapsed, 'Folder should not be collapsed by default');
folder.labelElement.click();
ok(folder.collapsed, 'Folder should be collapsed after clicking on it');
folder.labelElement.click();
ok(!folder.collapsed, 'Folder should be expanded after clicking on it again');
const removeEvent = BrowserTestUtils.waitForEvent(folder, 'TabGroupRemoved');
folder.delete();
await removeEvent;
});

View File

@@ -0,0 +1,29 @@
/* Any copyright is dedicated to the Public Domain.
https://creativecommons.org/publicdomain/zero/1.0/ */
'use strict';
add_task(async function test_Issue_9885() {
const subfolder = await gZenFolders.createFolder([], {
renameFolder: false,
label: 'subfolder',
});
const parent = await gZenFolders.createFolder([], {
renameFolder: false,
label: 'parent',
});
parent.tabs[0].after(subfolder);
Assert.equal(parent, subfolder.group, 'Parent folder is set correctly');
ok(!subfolder.collapsed, 'Subfolder should not be collapsed by default');
ok(!parent.collapsed, 'Parent folder should not be collapsed by default');
subfolder.labelElement.click();
ok(subfolder.collapsed, 'Subfolder should be collapsed after clicking on it');
ok(!parent.collapsed, 'Parent folder should be collapsed after clicking on subfolder');
const removeEvent = BrowserTestUtils.waitForEvent(parent, 'TabGroupRemoved');
parent.delete();
await removeEvent;
});