1a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// Copyright 2014 The Chromium Authors. All rights reserved.
2a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// Use of this source code is governed by a BSD-style license that can be
3a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// found in the LICENSE file.
4a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
5a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#ifndef EXTENSIONS_TEST_TEST_PERMISSION_MESSAGE_PROVIDER_H_
6a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#define EXTENSIONS_TEST_TEST_PERMISSION_MESSAGE_PROVIDER_H_
7a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
8a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#include "base/macros.h"
9a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#include "extensions/common/permissions/permission_message_provider.h"
10a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
11a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochnamespace extensions {
12a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
13a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochclass TestPermissionMessageProvider : public PermissionMessageProvider {
14a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch public:
15a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  TestPermissionMessageProvider();
16a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  virtual ~TestPermissionMessageProvider();
17a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
18a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch private:
19a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  virtual PermissionMessages GetPermissionMessages(
20a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      const PermissionSet* permissions,
21a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      Manifest::Type extension_type) const OVERRIDE;
22a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  virtual std::vector<base::string16> GetWarningMessages(
23a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      const PermissionSet* permissions,
24a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      Manifest::Type extension_type) const OVERRIDE;
25a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  virtual std::vector<base::string16> GetWarningMessagesDetails(
26a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      const PermissionSet* permissions,
27a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      Manifest::Type extension_type) const OVERRIDE;
28a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  virtual bool IsPrivilegeIncrease(
29a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      const PermissionSet* old_permissions,
30a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      const PermissionSet* new_permissions,
31a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch      Manifest::Type extension_type) const OVERRIDE;
32a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
33a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  DISALLOW_COPY_AND_ASSIGN(TestPermissionMessageProvider);
34a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch};
35a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
36a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch}  // namespace extensions
37a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
38a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#endif  // EXTENSIONS_TEST_TEST_PERMISSION_MESSAGE_PROVIDER_H_
39