Index: ios/web/test/test_web_thread_bundle.cc |
diff --git a/ios/web/test/test_web_thread_bundle.cc b/ios/web/test/test_web_thread_bundle.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..15745da79f00dbfb311cbe744972d9bb7d8d7aea |
--- /dev/null |
+++ b/ios/web/test/test_web_thread_bundle.cc |
@@ -0,0 +1,56 @@ |
+// Copyright 2014 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. |
+ |
+#include "ios/web/public/test/test_web_thread_bundle.h" |
+ |
+#include "content/public/test/test_browser_thread_bundle.h" |
+ |
+namespace web { |
+ |
+namespace { |
+ |
+int TestBrowserThreadBundleOptionsFromTestWebThreadBundleOptions(int options) { |
+ int result = 0; |
+ if (options & TestWebThreadBundle::IO_MAINLOOP) |
+ result |= content::TestBrowserThreadBundle::IO_MAINLOOP; |
+ if (options & TestWebThreadBundle::REAL_DB_THREAD) |
+ result |= content::TestBrowserThreadBundle::REAL_DB_THREAD; |
+ if (options & TestWebThreadBundle::REAL_FILE_THREAD) |
+ result |= content::TestBrowserThreadBundle::REAL_FILE_THREAD; |
+ if (options & TestWebThreadBundle::REAL_FILE_USER_BLOCKING_THREAD) |
+ result |= content::TestBrowserThreadBundle::REAL_FILE_USER_BLOCKING_THREAD; |
+ if (options & TestWebThreadBundle::REAL_CACHE_THREAD) |
+ result |= content::TestBrowserThreadBundle::REAL_CACHE_THREAD; |
+ if (options & TestWebThreadBundle::REAL_IO_THREAD) |
+ result |= content::TestBrowserThreadBundle::REAL_IO_THREAD; |
+ return result; |
+} |
+ |
+} // namespace |
+ |
+class TestWebThreadBundleImpl { |
+ public: |
+ explicit TestWebThreadBundleImpl(int options) |
+ : test_browser_thread_bundle_( |
+ TestBrowserThreadBundleOptionsFromTestWebThreadBundleOptions( |
+ options)) {} |
+ |
+ private: |
+ content::TestBrowserThreadBundle test_browser_thread_bundle_; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(TestWebThreadBundleImpl); |
+}; |
+ |
+TestWebThreadBundle::TestWebThreadBundle() |
+ : impl_(new TestWebThreadBundleImpl(DEFAULT)) { |
+} |
+ |
+TestWebThreadBundle::TestWebThreadBundle(int options) |
+ : impl_(new TestWebThreadBundleImpl(options)) { |
+} |
+ |
+TestWebThreadBundle::~TestWebThreadBundle() { |
+} |
+ |
+} // namespace web |