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/chrome_manifest_test.h"
6
7#include "base/command_line.h"
8#include "extensions/common/extension.h"
9#include "extensions/common/manifest.h"
10#include "extensions/common/manifest_constants.h"
11#include "extensions/common/switches.h"
12#include "testing/gtest/include/gtest/gtest.h"
13
14namespace errors = extensions::manifest_errors;
15
16TEST_F(ChromeManifestTest, ExperimentalPermission) {
17  LoadAndExpectError("experimental.json", errors::kExperimentalFlagRequired);
18  LoadAndExpectSuccess("experimental.json", extensions::Manifest::COMPONENT);
19  LoadAndExpectSuccess("experimental.json", extensions::Manifest::INTERNAL,
20                       extensions::Extension::FROM_WEBSTORE);
21  CommandLine::ForCurrentProcess()->AppendSwitch(
22      extensions::switches::kEnableExperimentalExtensionApis);
23  LoadAndExpectSuccess("experimental.json");
24}
25