1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "extensions/browser/extension_util.h"
6 #include "extensions/common/extension.h"
7 #include "extensions/common/manifest_handlers/incognito_info.h"
8 #include "extensions/common/manifest_test.h"
10 namespace extensions
{
12 using IncognitoManifestTest
= ManifestTest
;
14 TEST_F(IncognitoManifestTest
, IncognitoNotAllowed
) {
15 scoped_refptr
<Extension
> extension(
16 LoadAndExpectSuccess("incognito_not_allowed.json"));
17 EXPECT_FALSE(IncognitoInfo::IsIncognitoAllowed(extension
.get()));
18 EXPECT_FALSE(IncognitoInfo::IsSplitMode(extension
.get()));
19 EXPECT_FALSE(util::CanBeIncognitoEnabled(extension
.get()));
22 TEST_F(IncognitoManifestTest
, IncognitoSpanning
) {
23 scoped_refptr
<Extension
> extension(
24 LoadAndExpectSuccess("incognito_spanning.json"));
25 EXPECT_TRUE(IncognitoInfo::IsIncognitoAllowed(extension
.get()));
26 EXPECT_FALSE(IncognitoInfo::IsSplitMode(extension
.get()));
27 EXPECT_TRUE(util::CanBeIncognitoEnabled(extension
.get()));
30 TEST_F(IncognitoManifestTest
, IncognitoSplit
) {
31 scoped_refptr
<Extension
> extension(
32 LoadAndExpectSuccess("incognito_split.json"));
33 EXPECT_TRUE(IncognitoInfo::IsIncognitoAllowed(extension
.get()));
34 EXPECT_TRUE(IncognitoInfo::IsSplitMode(extension
.get()));
35 EXPECT_TRUE(util::CanBeIncognitoEnabled(extension
.get()));
38 TEST_F(IncognitoManifestTest
, IncognitoUnspecified
) {
39 scoped_refptr
<Extension
> extension(LoadAndExpectSuccess("minimal.json"));
40 EXPECT_TRUE(IncognitoInfo::IsIncognitoAllowed(extension
.get()));
41 EXPECT_FALSE(IncognitoInfo::IsSplitMode(extension
.get()));
42 EXPECT_TRUE(util::CanBeIncognitoEnabled(extension
.get()));
45 } // namespace extensions