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

Side by Side Diff: third_party/WebKit/Source/modules/fetch/DataConsumerHandleTestUtil.h

Issue 2172183003: Return unique_ptr<WebDataConsumerHandle::Reader> directly from obtainReader (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@gmock_cxx11
Patch Set: rebase Created 4 years, 4 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 DataConsumerHandleTestUtil_h 5 #ifndef DataConsumerHandleTestUtil_h
6 #define DataConsumerHandleTestUtil_h 6 #define DataConsumerHandleTestUtil_h
7 7
8 #include "bindings/core/v8/ScriptState.h" 8 #include "bindings/core/v8/ScriptState.h"
9 #include "core/testing/NullExecutionContext.h" 9 #include "core/testing/NullExecutionContext.h"
10 #include "gin/public/isolate_holder.h" 10 #include "gin/public/isolate_holder.h"
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 USING_FAST_MALLOC(DataConsumerHandle); 200 USING_FAST_MALLOC(DataConsumerHandle);
201 public: 201 public:
202 static std::unique_ptr<WebDataConsumerHandle> create(const String& n ame, PassRefPtr<Context> context) 202 static std::unique_ptr<WebDataConsumerHandle> create(const String& n ame, PassRefPtr<Context> context)
203 { 203 {
204 return wrapUnique(new DataConsumerHandle(name, context)); 204 return wrapUnique(new DataConsumerHandle(name, context));
205 } 205 }
206 206
207 private: 207 private:
208 DataConsumerHandle(const String& name, PassRefPtr<Context> context) : m_name(name.isolatedCopy()), m_context(context) { } 208 DataConsumerHandle(const String& name, PassRefPtr<Context> context) : m_name(name.isolatedCopy()), m_context(context) { }
209 209
210 Reader* obtainReaderInternal(Client*) { return new ReaderImpl(m_name , m_context); } 210 std::unique_ptr<Reader> obtainReader(Client*) { return WTF::wrapUniq ue(new ReaderImpl(m_name, m_context)); }
211 const char* debugName() const override { return "ThreadingTestBase:: DataConsumerHandle"; } 211 const char* debugName() const override { return "ThreadingTestBase:: DataConsumerHandle"; }
212 212
213 const String m_name; 213 const String m_name;
214 RefPtr<Context> m_context; 214 RefPtr<Context> m_context;
215 }; 215 };
216 216
217 void resetReader() { m_reader = nullptr; } 217 void resetReader() { m_reader = nullptr; }
218 void signalDone() { m_waitableEvent->signal(); } 218 void signalDone() { m_waitableEvent->signal(); }
219 const String& result() { return m_context->result(); } 219 const String& result() { return m_context->result(); }
220 void postTaskToReadingThread(const WebTraceLocation& location, std::uniq ue_ptr<CrossThreadClosure> task) 220 void postTaskToReadingThread(const WebTraceLocation& location, std::uniq ue_ptr<CrossThreadClosure> task)
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 { 300 {
301 ASSERT_NOT_REACHED(); 301 ASSERT_NOT_REACHED();
302 } 302 }
303 303
304 std::unique_ptr<WebDataConsumerHandle> m_handle; 304 std::unique_ptr<WebDataConsumerHandle> m_handle;
305 }; 305 };
306 306
307 class MockFetchDataConsumerHandle : public FetchDataConsumerHandle { 307 class MockFetchDataConsumerHandle : public FetchDataConsumerHandle {
308 public: 308 public:
309 static std::unique_ptr<::testing::StrictMock<MockFetchDataConsumerHandle >> create() { return wrapUnique(new ::testing::StrictMock<MockFetchDataConsumerH andle>); } 309 static std::unique_ptr<::testing::StrictMock<MockFetchDataConsumerHandle >> create() { return wrapUnique(new ::testing::StrictMock<MockFetchDataConsumerH andle>); }
310 MOCK_METHOD1(obtainReaderInternal, Reader*(Client*)); 310 MOCK_METHOD1(obtainFetchDataReader, std::unique_ptr<Reader>(Client*));
311 311
312 private: 312 private:
313 const char* debugName() const override { return "MockFetchDataConsumerHa ndle"; } 313 const char* debugName() const override { return "MockFetchDataConsumerHa ndle"; }
314 }; 314 };
315 315
316 class MockFetchDataConsumerReader : public FetchDataConsumerHandle::Reader { 316 class MockFetchDataConsumerReader : public FetchDataConsumerHandle::Reader {
317 public: 317 public:
318 static std::unique_ptr<::testing::StrictMock<MockFetchDataConsumerReader >> create() { return wrapUnique(new ::testing::StrictMock<MockFetchDataConsumerR eader>); } 318 static std::unique_ptr<::testing::StrictMock<MockFetchDataConsumerReader >> create() { return wrapUnique(new ::testing::StrictMock<MockFetchDataConsumerR eader>); }
319 319
320 using Result = WebDataConsumerHandle::Result; 320 using Result = WebDataConsumerHandle::Result;
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
421 size_t m_offset; 421 size_t m_offset;
422 WebThread* m_readerThread; 422 WebThread* m_readerThread;
423 Client* m_client; 423 Client* m_client;
424 Result m_result; 424 Result m_result;
425 bool m_isHandleAttached; 425 bool m_isHandleAttached;
426 Mutex m_mutex; 426 Mutex m_mutex;
427 std::unique_ptr<WaitableEvent> m_detached; 427 std::unique_ptr<WaitableEvent> m_detached;
428 }; 428 };
429 429
430 Context* getContext() { return m_context.get(); } 430 Context* getContext() { return m_context.get(); }
431 std::unique_ptr<Reader> obtainReader(Client*) override;
431 432
432 private: 433 private:
433 class ReaderImpl; 434 class ReaderImpl;
434 435
435 ReplayingHandle(); 436 ReplayingHandle();
436 Reader* obtainReaderInternal(Client*) override;
437 const char* debugName() const override { return "ReplayingHandle"; } 437 const char* debugName() const override { return "ReplayingHandle"; }
438 438
439 RefPtr<Context> m_context; 439 RefPtr<Context> m_context;
440 }; 440 };
441 441
442 class HandleReadResult final { 442 class HandleReadResult final {
443 USING_FAST_MALLOC(HandleReadResult); 443 USING_FAST_MALLOC(HandleReadResult);
444 public: 444 public:
445 HandleReadResult(WebDataConsumerHandle::Result result, const Vector<char >& data) : m_result(result), m_data(data) { } 445 HandleReadResult(WebDataConsumerHandle::Result result, const Vector<char >& data) : m_result(result), m_data(data) { }
446 WebDataConsumerHandle::Result result() const { return m_result; } 446 WebDataConsumerHandle::Result result() const { return m_result; }
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 std::unique_ptr<HandleReadResult> m_result; 533 std::unique_ptr<HandleReadResult> m_result;
534 bool m_isDone; 534 bool m_isDone;
535 535
536 std::unique_ptr<T> m_handleReader; 536 std::unique_ptr<T> m_handleReader;
537 }; 537 };
538 }; 538 };
539 539
540 } // namespace blink 540 } // namespace blink
541 541
542 #endif // DataConsumerHandleTestUtil_h 542 #endif // DataConsumerHandleTestUtil_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698