mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
76 lines
2.6 KiB
JavaScript
76 lines
2.6 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
let contentWindow;
|
|
let groupItem;
|
|
|
|
function test() {
|
|
waitForExplicitFinish();
|
|
|
|
let newTabOne = gBrowser.addTab();
|
|
let newTabTwo = gBrowser.addTab();
|
|
let newTabThree = gBrowser.addTab();
|
|
|
|
registerCleanupFunction(function() {
|
|
TabView.hide();
|
|
while (gBrowser.tabs.length > 1)
|
|
gBrowser.removeTab(gBrowser.tabs[0]);
|
|
});
|
|
|
|
showTabView(function() {
|
|
contentWindow = document.getElementById("tab-view").contentWindow;
|
|
is(contentWindow.GroupItems.groupItems.length, 1, "Has only one group");
|
|
|
|
groupItem = contentWindow.GroupItems.groupItems[0];
|
|
|
|
whenAppTabIconAdded(groupItem, function () {
|
|
whenAppTabIconAdded(groupItem, function () {
|
|
whenAppTabIconAdded(groupItem, function () {
|
|
|
|
is(xulTabForAppTabIcon(0), newTabOne,
|
|
"New tab one matches the first app tab icon in tabview");
|
|
is(xulTabForAppTabIcon(1), newTabTwo,
|
|
"New tab two matches the second app tab icon in tabview");
|
|
is(xulTabForAppTabIcon(2), newTabThree,
|
|
"New tab three matches the third app tab icon in tabview");
|
|
|
|
// move the last tab to the first position
|
|
gBrowser.moveTabTo(newTabThree, 0);
|
|
is(xulTabForAppTabIcon(0), newTabThree,
|
|
"New tab three matches the first app tab icon in tabview");
|
|
is(xulTabForAppTabIcon(1), newTabOne,
|
|
"New tab one matches the second app tab icon in tabview");
|
|
is(xulTabForAppTabIcon(2), newTabTwo,
|
|
"New tab two matches the third app tab icon in tabview");
|
|
|
|
// move the first tab to the second position
|
|
gBrowser.moveTabTo(newTabThree, 1);
|
|
is(xulTabForAppTabIcon(0), newTabOne,
|
|
"New tab one matches the first app tab icon in tabview");
|
|
is(xulTabForAppTabIcon(1), newTabThree,
|
|
"New tab three matches the second app tab icon in tabview");
|
|
is(xulTabForAppTabIcon(2), newTabTwo,
|
|
"New tab two matches the third app tab icon in tabview");
|
|
|
|
hideTabView(function() {
|
|
gBrowser.removeTab(newTabOne);
|
|
gBrowser.removeTab(newTabTwo);
|
|
gBrowser.removeTab(newTabThree);
|
|
finish();
|
|
});
|
|
});
|
|
gBrowser.pinTab(newTabThree);
|
|
});
|
|
gBrowser.pinTab(newTabTwo);
|
|
});
|
|
gBrowser.pinTab(newTabOne);
|
|
});
|
|
}
|
|
|
|
function xulTabForAppTabIcon(index) {
|
|
return contentWindow.iQ(
|
|
contentWindow.iQ(".appTabIcon",
|
|
groupItem.$appTabTray)[index]).data("xulTab");
|
|
}
|
|
|