Index: net/base/test_completion_callback.h |
diff --git a/net/base/test_completion_callback.h b/net/base/test_completion_callback.h |
deleted file mode 100644 |
index b7f8985c31703ee8ac75178203894465ddda84b9..0000000000000000000000000000000000000000 |
--- a/net/base/test_completion_callback.h |
+++ /dev/null |
@@ -1,146 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef NET_BASE_TEST_COMPLETION_CALLBACK_H_ |
-#define NET_BASE_TEST_COMPLETION_CALLBACK_H_ |
- |
-#include "base/callback.h" |
-#include "base/compiler_specific.h" |
-#include "net/base/completion_callback.h" |
-#include "net/base/net_errors.h" |
- |
-//----------------------------------------------------------------------------- |
-// completion callback helper |
- |
-// A helper class for completion callbacks, designed to make it easy to run |
-// tests involving asynchronous operations. Just call WaitForResult to wait |
-// for the asynchronous operation to complete. |
-// |
-// NOTE: Since this runs a message loop to wait for the completion callback, |
-// there could be other side-effects resulting from WaitForResult. For this |
-// reason, this class is probably not ideal for a general application. |
-// |
- |
-namespace net { |
- |
-class IOBuffer; |
- |
-namespace internal { |
- |
-class TestCompletionCallbackBaseInternal { |
- public: |
- bool have_result() const { return have_result_; } |
- |
- protected: |
- TestCompletionCallbackBaseInternal(); |
- virtual ~TestCompletionCallbackBaseInternal(); |
- |
- void DidSetResult(); |
- void WaitForResult(); |
- |
- bool have_result_; |
- bool waiting_for_result_; |
- |
- private: |
- DISALLOW_COPY_AND_ASSIGN(TestCompletionCallbackBaseInternal); |
-}; |
- |
-template <typename R> |
-class TestCompletionCallbackTemplate |
- : public TestCompletionCallbackBaseInternal { |
- public: |
- virtual ~TestCompletionCallbackTemplate() override {} |
- |
- R WaitForResult() { |
- TestCompletionCallbackBaseInternal::WaitForResult(); |
- return result_; |
- } |
- |
- R GetResult(R result) { |
- if (net::ERR_IO_PENDING != result) |
- return result; |
- return WaitForResult(); |
- } |
- |
- protected: |
- // Override this method to gain control as the callback is running. |
- virtual void SetResult(R result) { |
- result_ = result; |
- DidSetResult(); |
- } |
- |
- TestCompletionCallbackTemplate() : result_(R()) {} |
- R result_; |
- |
- private: |
- DISALLOW_COPY_AND_ASSIGN(TestCompletionCallbackTemplate); |
-}; |
- |
-} // namespace internal |
- |
-class TestClosure |
- : public internal::TestCompletionCallbackBaseInternal { |
- public: |
- using internal::TestCompletionCallbackBaseInternal::WaitForResult; |
- |
- TestClosure(); |
- ~TestClosure() override; |
- |
- const base::Closure& closure() const { return closure_; } |
- |
- private: |
- const base::Closure closure_; |
- |
- DISALLOW_COPY_AND_ASSIGN(TestClosure); |
-}; |
- |
-// Base class overridden by custom implementations of TestCompletionCallback. |
-typedef internal::TestCompletionCallbackTemplate<int> |
- TestCompletionCallbackBase; |
- |
-typedef internal::TestCompletionCallbackTemplate<int64> |
- TestInt64CompletionCallbackBase; |
- |
-class TestCompletionCallback : public TestCompletionCallbackBase { |
- public: |
- TestCompletionCallback(); |
- ~TestCompletionCallback() override; |
- |
- const CompletionCallback& callback() const { return callback_; } |
- |
- private: |
- const CompletionCallback callback_; |
- |
- DISALLOW_COPY_AND_ASSIGN(TestCompletionCallback); |
-}; |
- |
-class TestInt64CompletionCallback : public TestInt64CompletionCallbackBase { |
- public: |
- TestInt64CompletionCallback(); |
- ~TestInt64CompletionCallback() override; |
- |
- const Int64CompletionCallback& callback() const { return callback_; } |
- |
- private: |
- const Int64CompletionCallback callback_; |
- |
- DISALLOW_COPY_AND_ASSIGN(TestInt64CompletionCallback); |
-}; |
- |
-// Makes sure that the buffer is not referenced when the callback runs. |
-class ReleaseBufferCompletionCallback: public TestCompletionCallback { |
- public: |
- explicit ReleaseBufferCompletionCallback(IOBuffer* buffer); |
- ~ReleaseBufferCompletionCallback() override; |
- |
- private: |
- void SetResult(int result) override; |
- |
- IOBuffer* buffer_; |
- DISALLOW_COPY_AND_ASSIGN(ReleaseBufferCompletionCallback); |
-}; |
- |
-} // namespace net |
- |
-#endif // NET_BASE_TEST_COMPLETION_CALLBACK_H_ |