#include "base/memory/raw_ptr.h"
#include "base/task/single_thread_task_runner.h"
#include "base/test/test_timeouts.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "content/browser/feature_observer.h"
#include "content/public/browser/back_forward_cache.h"
#include "content/public/browser/content_browser_client.h"
#include "content/public/browser/feature_observer_client.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/common/content_client.h"
#include "content/public/test/browser_test.h"
#include "content/public/test/browser_test_utils.h"
#include "content/public/test/content_browser_test.h"
#include "content/public/test/content_browser_test_content_browser_client.h"
#include "content/public/test/content_browser_test_utils.h"
#include "content/public/test/content_mock_cert_verifier.h"
#include "content/shell/browser/shell.h"
#include "net/dns/mock_host_resolver.h"
#include "net/test/embedded_test_server/embedded_test_server.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#if BUILDFLAG(IS_ANDROID)
#include "base/android/build_info.h"
#endif
namespace content {
namespace {
void RunLoopWithTimeout() { … }
class TestBrowserClient : public ContentBrowserTestContentBrowserClient { … };
class MockObserverClient : public FeatureObserverClient { … };
class IndexedDBFeatureObserverBrowserTest : public ContentBrowserTest { … };
bool OpenConnectionA(RenderFrameHost* rfh) { … }
bool OpenConnectionB(RenderFrameHost* rfh) { … }
}
IN_PROC_BROWSER_TEST_F(IndexedDBFeatureObserverBrowserTest,
ObserverSingleConnection) { … }
#if BUILDFLAG(IS_CHROMEOS_ASH) && defined(NDEBUG)
#define MAYBE_ObserverTwoLocks …
#else
#define MAYBE_ObserverTwoLocks …
#endif
IN_PROC_BROWSER_TEST_F(IndexedDBFeatureObserverBrowserTest,
MAYBE_ObserverTwoLocks) { … }
IN_PROC_BROWSER_TEST_F(IndexedDBFeatureObserverBrowserTest, ObserverNavigate) { … }
IN_PROC_BROWSER_TEST_F(IndexedDBFeatureObserverBrowserTest,
ObserverDedicatedWorker) { … }
#if !BUILDFLAG(IS_ANDROID)
IN_PROC_BROWSER_TEST_F(IndexedDBFeatureObserverBrowserTest,
ObserverSharedWorker) { … }
#endif
IN_PROC_BROWSER_TEST_F(IndexedDBFeatureObserverBrowserTest,
ObserverServiceWorker) { … }
}