1// Copyright 2013 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#ifndef COMPONENTS_NACL_BROWSER_TEST_NACL_BROWSER_DELEGATE_H_
6#define COMPONENTS_NACL_BROWSER_TEST_NACL_BROWSER_DELEGATE_H_
7
8#include "base/basictypes.h"
9#include "base/compiler_specific.h"
10#include "components/nacl/browser/nacl_browser_delegate.h"
11
12// This is a base test implementation of NaClBrowserDelegate which
13// does nothing. Individual tests can override the methods further.
14// To use the test delegate:
15//
16//   NaClBrowser::SetDelegate(new RefinedTestNaClBrowserDelegate);
17//
18// and
19//
20//   NaClBrowser::SetDelegate(NULL);   // frees the test delegate.
21class TestNaClBrowserDelegate : public NaClBrowserDelegate {
22 public:
23  TestNaClBrowserDelegate();
24  virtual ~TestNaClBrowserDelegate();
25  virtual void ShowNaClInfobar(int render_process_id,
26                               int render_view_id,
27                               int error_id) OVERRIDE;
28  virtual bool DialogsAreSuppressed() OVERRIDE;
29  virtual bool GetCacheDirectory(base::FilePath* cache_dir) OVERRIDE;
30  virtual bool GetPluginDirectory(base::FilePath* plugin_dir) OVERRIDE;
31  virtual bool GetPnaclDirectory(base::FilePath* pnacl_dir) OVERRIDE;
32  virtual bool GetUserDirectory(base::FilePath* user_dir) OVERRIDE;
33  virtual std::string GetVersionString() const OVERRIDE;
34  virtual ppapi::host::HostFactory* CreatePpapiHostFactory(
35      content::BrowserPpapiHost* ppapi_host) OVERRIDE;
36  virtual bool MapUrlToLocalFilePath(const GURL& url,
37                                     bool use_blocking_api,
38                                     base::FilePath* file_path) OVERRIDE;
39  virtual void SetDebugPatterns(std::string debug_patterns) OVERRIDE;
40  virtual bool URLMatchesDebugPatterns(const GURL& manifest_url) OVERRIDE;
41
42 private:
43  DISALLOW_COPY_AND_ASSIGN(TestNaClBrowserDelegate);
44};
45
46#endif  // COMPONENTS_NACL_BROWSER_TEST_NACL_BROWSER_DELEGATE_H_
47