#ifndef CHROME_BROWSER_PRELOADING_PREFETCH_NO_STATE_PREFETCH_NO_STATE_PREFETCH_TEST_UTILS_H_
#define CHROME_BROWSER_PRELOADING_PREFETCH_NO_STATE_PREFETCH_NO_STATE_PREFETCH_TEST_UTILS_H_
#include <functional>
#include <map>
#include <memory>
#include <set>
#include <string>
#include <vector>
#include "base/containers/circular_deque.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/run_loop.h"
#include "base/scoped_multi_source_observation.h"
#include "base/synchronization/lock.h"
#include "base/test/metrics/histogram_tester.h"
#include "chrome/browser/external_protocol/external_protocol_handler.h"
#include "chrome/browser/safe_browsing/test_safe_browsing_service.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "components/no_state_prefetch/browser/no_state_prefetch_contents.h"
#include "components/no_state_prefetch/browser/no_state_prefetch_contents_delegate.h"
#include "components/no_state_prefetch/browser/no_state_prefetch_manager.h"
#include "components/safe_browsing/core/browser/db/fake_database_manager.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/render_widget_host_observer.h"
#include "url/gurl.h"
namespace prerender {
namespace test_utils {
extern const char kSecondaryDomain[];
class TestNoStatePrefetchContents : public NoStatePrefetchContents,
public content::RenderWidgetHostObserver { … };
class TestPrerender : public NoStatePrefetchContents::Observer { … };
class DestructionWaiter { … };
class FirstContentfulPaintManagerWaiter
: public NoStatePrefetchManagerObserver { … };
class TestNoStatePrefetchContentsFactory
: public NoStatePrefetchContents::Factory { … };
class PrerenderInProcessBrowserTest : virtual public InProcessBrowserTest { … };
}
}
#endif