gecko/browser/components/tabview/test/browser_tabview_bug712203.js

68 lines
2.2 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
function test() {
waitForExplicitFinish();
// create two groups and each group has one tab item
let newState = {
windows: [{
tabs: [{
entries: [{ url: "http://www.google.com" }],
hidden: true,
attributes: {},
extData: {
"tabview-tab":
'{"bounds":{"left":21,"top":29,"width":204,"height":153},' +
'"userSize":null,"url":"http://www.google.com","groupID":1,' +
'"imageData":null,"title":null}'
}
},{
entries: [{ url: "about:blank" }],
hidden: false,
attributes: {},
extData: {
"tabview-tab":
'{"bounds":{"left":315,"top":29,"width":111,"height":84},' +
'"userSize":null,"url":"about:blank","groupID":2,' +
'"imageData":null,"title":null}'
},
}],
selected:2,
_closedTabs: [],
extData: {
"tabview-groups": '{"nextID":3,"activeGroupId":2}',
"tabview-group":
'{"1":{"bounds":{"left":15,"top":5,"width":280,"height":232},' +
'"userSize":null,"title":"","id":1},' +
'"2":{"bounds":{"left":309,"top":5,"width":267,"height":226},' +
'"userSize":null,"title":"","id":2}}',
"tabview-ui": '{"pageBounds":{"left":0,"top":0,"width":788,"height":548}}'
}, sizemode:"normal"
}]
};
newWindowWithState(newState, function(win) {
registerCleanupFunction(function () win.close());
let selectedTab = win.gBrowser.selectedTab;
win.addEventListener("tabviewframeinitialized", function onInit() {
win.removeEventListener("tabviewframeinitialized", onInit, false);
// ensure the TabView.contentWindow is set.
executeSoon(function() {
let cw = win.TabView.getContentWindow();
is(cw.GroupItems.groupItems.length, 2, "There are two groups");
is(cw.GroupItems.getActiveGroupItem().id, 1, "The active group item is 1");
isnot(selectedTab, win.gBrowser.selectedTab, "The selected tab is different");
finish();
});
}, false);
goToNextGroup(win);
});
}