Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Side by Side Diff: chrome_frame/test/urlmon_moniker_tests.h

Issue 1589013: Switch renderer in Moniker patch... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_FRAME_TEST_URLMON_MONIKER_TESTS_H_ 5 #ifndef CHROME_FRAME_TEST_URLMON_MONIKER_TESTS_H_
6 #define CHROME_FRAME_TEST_URLMON_MONIKER_TESTS_H_ 6 #define CHROME_FRAME_TEST_URLMON_MONIKER_TESTS_H_
7 7
8 #include <atlbase.h> 8 #include <atlbase.h>
9 #include <atlcom.h> 9 #include <atlcom.h>
10 10
11 #include "chrome_frame/bho.h"
12 #include "gmock/gmock.h" 11 #include "gmock/gmock.h"
13 #include "gtest/gtest.h" 12 #include "gtest/gtest.h"
14 13
15 class MockBindingImpl
16 : public SimpleBindingImpl,
17 public IServiceProvider {
18 public:
19 BEGIN_COM_MAP(MockBindingImpl)
20 COM_INTERFACE_ENTRY(IBinding)
21 COM_INTERFACE_ENTRY(IServiceProvider)
22 END_COM_MAP()
23
24 MOCK_METHOD0_WITH_CALLTYPE(__stdcall, Abort,
25 HRESULT ()); // NOLINT
26 MOCK_METHOD3_WITH_CALLTYPE(__stdcall, QueryService,
27 HRESULT (REFGUID svc, // NOLINT
28 REFIID riid,
29 void** obj));
30 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, GetBindResult,
31 HRESULT (CLSID* protocol, // NOLINT
32 DWORD* result_code,
33 LPOLESTR* result,
34 DWORD* reserved));
35 };
36
37 class MockHttpNegotiateImpl
38 : public CComObjectRootEx<CComSingleThreadModel>,
39 public IHttpNegotiate {
40 public:
41 BEGIN_COM_MAP(MockHttpNegotiateImpl)
42 COM_INTERFACE_ENTRY(IHttpNegotiate)
43 END_COM_MAP()
44 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, BeginningTransaction,
45 HRESULT (LPCWSTR url, // NOLINT
46 LPCWSTR headers,
47 DWORD reserved,
48 LPWSTR* additional));
49 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, OnResponse,
50 HRESULT (DWORD code, // NOLINT
51 LPCWSTR response_headers,
52 LPCWSTR request_headers,
53 LPWSTR* additional));
54 };
55
56 class MockBindStatusCallbackImpl 14 class MockBindStatusCallbackImpl
57 : public CComObjectRootEx<CComSingleThreadModel>, 15 : public CComObjectRootEx<CComSingleThreadModel>,
58 public IBindStatusCallback { 16 public IBindStatusCallback {
59 public: 17 public:
60 BEGIN_COM_MAP(MockBindStatusCallbackImpl) 18 BEGIN_COM_MAP(MockBindStatusCallbackImpl)
61 COM_INTERFACE_ENTRY(IBindStatusCallback) 19 COM_INTERFACE_ENTRY(IBindStatusCallback)
62 END_COM_MAP() 20 END_COM_MAP()
21
63 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, OnStartBinding, 22 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, OnStartBinding,
64 HRESULT (DWORD reserved, IBinding* binding)); // NOLINT 23 HRESULT (DWORD reserved, IBinding* binding)); // NOLINT
65 24
66 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, GetPriority, 25 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, GetPriority,
67 HRESULT (LONG* priority)); // NOLINT 26 HRESULT (LONG* priority)); // NOLINT
68 27
69 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, OnLowResource, 28 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, OnLowResource,
70 HRESULT (DWORD reserved)); // NOLINT 29 HRESULT (DWORD reserved)); // NOLINT
71 30
72 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, OnProgress, 31 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, OnProgress,
(...skipping 12 matching lines...) Expand all
85 44
86 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, OnDataAvailable, 45 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, OnDataAvailable,
87 HRESULT (DWORD flags, // NOLINT 46 HRESULT (DWORD flags, // NOLINT
88 DWORD size, 47 DWORD size,
89 FORMATETC* format, 48 FORMATETC* format,
90 STGMEDIUM* storage)); 49 STGMEDIUM* storage));
91 50
92 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, OnObjectAvailable, 51 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, OnObjectAvailable,
93 HRESULT (REFIID riid, // NOLINT 52 HRESULT (REFIID riid, // NOLINT
94 IUnknown* unk)); 53 IUnknown* unk));
95
96 static void ReadAllData(STGMEDIUM* storage) {
97 DCHECK(storage);
98 DCHECK(storage->tymed == TYMED_ISTREAM);
99 char buffer[0xff];
100 HRESULT hr;
101 DWORD read = 0;
102 do {
103 hr = storage->pstm->Read(buffer, sizeof(buffer), &read);
104 } while (hr == S_OK && read);
105 }
106
107 static void SetSyncBindInfo(DWORD* flags, BINDINFO* bind_info) {
108 DCHECK(flags);
109 DCHECK(bind_info);
110 *flags = BINDF_PULLDATA | BINDF_NOWRITECACHE;
111 DCHECK(bind_info->cbSize >= sizeof(BINDINFO));
112 bind_info->dwBindVerb = BINDVERB_GET;
113 memset(&bind_info->stgmedData, 0, sizeof(STGMEDIUM));
114 bind_info->grfBindInfoF = 0;
115 bind_info->szCustomVerb = NULL;
116 }
117
118 static void SetAsyncBindInfo(DWORD* flags, BINDINFO* bind_info) {
119 DCHECK(flags);
120 DCHECK(bind_info);
121 *flags = BINDF_ASYNCHRONOUS | BINDF_ASYNCSTORAGE | BINDF_PULLDATA |
122 BINDF_NOWRITECACHE;
123 DCHECK(bind_info->cbSize >= sizeof(BINDINFO));
124 bind_info->dwBindVerb = BINDVERB_GET;
125 memset(&bind_info->stgmedData, 0, sizeof(STGMEDIUM));
126 bind_info->grfBindInfoF = 0;
127 bind_info->szCustomVerb = NULL;
128 }
129 }; 54 };
130 55
131 class TestNavigationManager : public NavigationManager { 56 class MockBindCtxImpl
57 : public CComObjectRootEx<CComSingleThreadModel>,
58 public IBindCtx {
132 public: 59 public:
133 TestNavigationManager() { 60 BEGIN_COM_MAP(MockBindCtxImpl)
134 } 61 COM_INTERFACE_ENTRY(IBindCtx)
62 END_COM_MAP()
135 63
136 bool HasRequestData() const { 64 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, RegisterObjectBound,
137 return request_data_.get() != NULL; 65 HRESULT (IUnknown* object)); // NOLINT
138 } 66
67 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, RevokeObjectBound,
68 HRESULT (IUnknown* object)); // NOLINT
69
70 MOCK_METHOD0_WITH_CALLTYPE(__stdcall, ReleaseBoundObjects,
71 HRESULT ()); // NOLINT
72
73 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, SetBindOptions,
74 HRESULT (BIND_OPTS* options)); // NOLINT
75
76 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, GetBindOptions,
77 HRESULT (BIND_OPTS* options)); // NOLINT
78
79 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, GetRunningObjectTable,
80 HRESULT (IRunningObjectTable** rot)); // NOLINT
81
82 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, RegisterObjectParam,
83 HRESULT (LPOLESTR key, // NOLINT
84 IUnknown* param));
85
86 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, GetObjectParam,
87 HRESULT (LPOLESTR key, // NOLINT
88 IUnknown** param));
89
90 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, EnumObjectParam,
91 HRESULT (IEnumString** enum_params)); // NOLINT
92
93 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, RevokeObjectParam,
94 HRESULT (LPOLESTR key)); // NOLINT
95 };
96
97 class MockMonikerImpl
98 : public CComObjectRootEx<CComSingleThreadModel>,
99 public IMoniker {
100 public:
101 BEGIN_COM_MAP(MockMonikerImpl)
102 COM_INTERFACE_ENTRY(IMoniker)
103 END_COM_MAP()
104
105 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, BindToObject,
106 HRESULT (IBindCtx* bind_context, // NOLINT
107 IMoniker* left,
108 REFIID result_iid,
109 void** object));
110
111 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, BindToStorage,
112 HRESULT (IBindCtx* bind_context, // NOLINT
113 IMoniker* left,
114 REFIID result_iid,
115 void** storage));
116
117 MOCK_METHOD4_WITH_CALLTYPE(__stdcall, Reduce,
118 HRESULT (IBindCtx* bind_context, // NOLINT
119 DWORD reduce_depth,
120 IMoniker* left,
121 IMoniker** reduced));
122
123 MOCK_METHOD3_WITH_CALLTYPE(__stdcall, ComposeWith,
124 HRESULT (IBindCtx* right, // NOLINT
125 BOOL is_not_generic,
126 IMoniker** composite));
127
128 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, Enum,
129 HRESULT (BOOL is_forward, // NOLINT
130 IEnumMoniker** moniker_enum));
131
132 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, IsEqual,
133 HRESULT (IMoniker* other)); // NOLINT
134
135 MOCK_METHOD3_WITH_CALLTYPE(__stdcall, IsRunning,
136 HRESULT (IBindCtx* bind_context, // NOLINT
137 IMoniker* left,
138 IMoniker** newly_running));
139
140 MOCK_METHOD3_WITH_CALLTYPE(__stdcall, GetTimeOfLastChange,
141 HRESULT (IBindCtx* bind_context, // NOLINT
142 IMoniker* left,
143 FILETIME *pFileTime));
144
145 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, Inverse,
146 HRESULT (IMoniker** inversed)); // NOLINT
147
148 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, CommonPrefixWith,
149 HRESULT (IMoniker* other, // NOLINT
150 IMoniker** prefix));
151
152 MOCK_METHOD2_WITH_CALLTYPE(__stdcall, RelativePathTo,
153 HRESULT (IMoniker* other, // NOLINT
154 IMoniker** relative));
155
156 MOCK_METHOD3_WITH_CALLTYPE(__stdcall, GetDisplayName,
157 HRESULT (IBindCtx* bind_context, // NOLINT
158 IMoniker* left,
159 LPOLESTR* display_name));
160
161 MOCK_METHOD5_WITH_CALLTYPE(__stdcall, ParseDisplayName,
162 HRESULT (IBindCtx* bind_context, // NOLINT
163 IMoniker* left,
164 LPOLESTR display_name,
165 ULONG *pchEaten,
166 IMoniker** ret));
167
168 MOCK_METHOD1_WITH_CALLTYPE(__stdcall, IsSystemMoniker,
169 HRESULT (DWORD* is_system)); // NOLINT
139 }; 170 };
140 171
141 #endif // CHROME_FRAME_TEST_URLMON_MONIKER_TESTS_H_ 172 #endif // CHROME_FRAME_TEST_URLMON_MONIKER_TESTS_H_
142
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698