extension_manifests_experimental_unittest.cc revision 5821806d5e7f356e8fa4b058a389a808ea183019
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 "testing/gtest/include/gtest/gtest.h"
12
13namespace errors = extension_manifest_errors;
14
15TEST_F(ExtensionManifestTest, ExperimentalPermission) {
16  LoadAndExpectError("experimental.json", errors::kExperimentalFlagRequired);
17  LoadAndExpectSuccess("experimental.json", extensions::Extension::COMPONENT);
18  LoadAndExpectSuccess("experimental.json", extensions::Extension::INTERNAL,
19                       extensions::Extension::FROM_WEBSTORE);
20  CommandLine::ForCurrentProcess()->AppendSwitch(
21      switches::kEnableExperimentalExtensionApis);
22  LoadAndExpectSuccess("experimental.json");
23}
24