extension_manifests_isolatedapp_unittest.cc revision c2e0dbddbe15c98d52c4786dac06cb8952a8ae6d
1// Copyright (c) 2012 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.
4
5#include "chrome/common/extensions/manifest_tests/extension_manifest_test.h"
6
7#include "base/command_line.h"
8#include "chrome/common/chrome_switches.h"
9#include "chrome/common/extensions/extension.h"
10#include "chrome/common/extensions/extension_manifest_constants.h"
11#include "chrome/common/extensions/manifest_handlers/app_isolation_info.h"
12#include "testing/gtest/include/gtest/gtest.h"
13
14namespace errors = extension_manifest_errors;
15
16namespace extensions {
17
18class IsolatedAppsManifestTest : public ExtensionManifestTest {
19};
20
21TEST_F(IsolatedAppsManifestTest, IsolatedApps) {
22  // Requires --enable-experimental-extension-apis
23  LoadAndExpectError("isolated_app_valid.json",
24                     errors::kExperimentalFlagRequired);
25
26  CommandLine::ForCurrentProcess()->AppendSwitch(
27      switches::kEnableExperimentalExtensionApis);
28  scoped_refptr<Extension> extension2(
29      LoadAndExpectSuccess("isolated_app_valid.json"));
30  EXPECT_TRUE(AppIsolationInfo::HasIsolatedStorage(extension2));
31}
32
33}  // namespace extensions
34