| // Copyright 2018 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 "base/bind.h" | 
 | #include "base/bind_helpers.h" | 
 | #include "base/memory/ref_counted.h" | 
 | #include "base/memory/scoped_refptr.h" | 
 | #include "base/memory/weak_ptr.h" | 
 | #include "base/run_loop.h" | 
 | #include "base/task/post_task.h" | 
 | #include "base/test/gtest_util.h" | 
 | #include "build/build_config.h" | 
 | #include "content/public/browser/browser_task_traits.h" | 
 | #include "content/public/browser/browser_thread.h" | 
 | #include "content/public/test/content_browser_test.h" | 
 | #include "content/public/test/test_utils.h" | 
 |  | 
 | namespace content { | 
 |  | 
 | class BrowserThreadPostTaskBeforeInitBrowserTest : public ContentBrowserTest { | 
 |  protected: | 
 |   void SetUp() override { | 
 |     // This should fail because the ThreadPool + TaskExecutor weren't created | 
 |     // yet. | 
 |     EXPECT_DCHECK_DEATH( | 
 |         base::PostTask(FROM_HERE, {BrowserThread::IO}, base::DoNothing())); | 
 |  | 
 |     // Obtaining a TaskRunner should also fail. | 
 |     EXPECT_DCHECK_DEATH(base::CreateTaskRunner({BrowserThread::IO})); | 
 |  | 
 |     ContentBrowserTest::SetUp(); | 
 |   } | 
 | }; | 
 |  | 
 | IN_PROC_BROWSER_TEST_F(BrowserThreadPostTaskBeforeInitBrowserTest, | 
 |                        ExpectFailures) {} | 
 |  | 
 | }  // namespace content |