ssl_client_certificate_selector_test.h revision 0f1bc08d4cfcc34181b0b5cbf065c40f687bf740
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#ifndef CHROME_BROWSER_SSL_SSL_CLIENT_CERTIFICATE_SELECTOR_TEST_H_
6#define CHROME_BROWSER_SSL_SSL_CLIENT_CERTIFICATE_SELECTOR_TEST_H_
7
8#include "base/memory/scoped_ptr.h"
9#include "base/synchronization/waitable_event.h"
10#include "chrome/browser/ssl/ssl_client_auth_requestor_mock.h"
11#include "chrome/test/base/in_process_browser_test.h"
12#include "testing/gtest/include/gtest/gtest.h"
13
14namespace net {
15class URLRequestContextGetter;
16}
17
18class SSLClientCertificateSelectorTestBase : public InProcessBrowserTest {
19 public:
20  SSLClientCertificateSelectorTestBase();
21  virtual ~SSLClientCertificateSelectorTestBase();
22
23  // InProcessBrowserTest:
24  virtual void SetUpInProcessBrowserTestFixture() OVERRIDE;
25  virtual void SetUpOnMainThread() OVERRIDE;
26  virtual void CleanUpOnMainThread() OVERRIDE;
27
28  virtual void SetUpOnIOThread();
29  virtual void CleanUpOnIOThread();
30
31 protected:
32  scoped_ptr<net::URLRequest> MakeURLRequest(
33      net::URLRequestContextGetter* context_getter);
34
35  base::WaitableEvent io_loop_finished_event_;
36
37  scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_;
38  net::URLRequest* url_request_;
39
40  scoped_refptr<net::X509Certificate> mit_davidben_cert_;
41  scoped_refptr<net::X509Certificate> foaf_me_chromium_test_cert_;
42  scoped_refptr<net::SSLCertRequestInfo> cert_request_info_;
43  scoped_refptr<testing::StrictMock<SSLClientAuthRequestorMock> >
44      auth_requestor_;
45};
46
47#endif  // CHROME_BROWSER_SSL_SSL_CLIENT_CERTIFICATE_SELECTOR_TEST_H_
48