|
1 'use strict'; |
|
2 |
|
3 const tabs = require('sdk/tabs'); |
|
4 const { isPrivate } = require('sdk/private-browsing'); |
|
5 const pbUtils = require('sdk/private-browsing/utils'); |
|
6 const { getOwnerWindow } = require('sdk/private-browsing/window/utils'); |
|
7 |
|
8 exports.testPrivateTabsAreListed = function (assert, done) { |
|
9 let originalTabCount = tabs.length; |
|
10 |
|
11 tabs.open({ |
|
12 url: 'about:blank', |
|
13 isPrivate: true, |
|
14 onOpen: function(tab) { |
|
15 let win = getOwnerWindow(tab); |
|
16 // PWPB case |
|
17 if (pbUtils.isWindowPBSupported || pbUtils.isTabPBSupported) { |
|
18 assert.ok(isPrivate(tab), "tab is private"); |
|
19 assert.equal(tabs.length, originalTabCount + 1, |
|
20 'New private window\'s tab are visible in tabs list'); |
|
21 } |
|
22 else { |
|
23 // Global case, openDialog didn't opened a private window/tab |
|
24 assert.ok(!isPrivate(tab), "tab isn't private"); |
|
25 assert.equal(tabs.length, originalTabCount + 1, |
|
26 'New non-private window\'s tab is visible in tabs list'); |
|
27 } |
|
28 |
|
29 tab.close(done); |
|
30 } |
|
31 }); |
|
32 }; |
|
33 |