#include "chrome/browser/first_party_sets/first_party_sets_navigation_throttle.h"
#include "base/functional/callback_helpers.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/scoped_feature_list.h"
#include "base/time/time.h"
#include "chrome/browser/first_party_sets/first_party_sets_policy_service.h"
#include "chrome/browser/first_party_sets/first_party_sets_policy_service_factory.h"
#include "chrome/browser/first_party_sets/scoped_mock_first_party_sets_handler.h"
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
#include "content/public/common/content_features.h"
#include "content/public/test/mock_navigation_handle.h"
#include "net/base/features.h"
#include "third_party/blink/public/common/features.h"
namespace {
const char kExampleURL[] = …;
}
namespace first_party_sets {
class FirstPartySetsNavigationThrottleTest
: public ChromeRenderViewHostTestHarness { … };
TEST_F(FirstPartySetsNavigationThrottleTest,
MaybeCreateNavigationThrottle_ClearingFeatureEnabled) { … }
TEST_F(FirstPartySetsNavigationThrottleTest,
MaybeCreateNavigationThrottle_OnlyCreateForOuterMostframes) { … }
TEST_F(FirstPartySetsNavigationThrottleTest,
MaybeCreateNavigationThrottle_IrregularProfile) { … }
TEST_F(FirstPartySetsNavigationThrottleTest,
MaybeCreateNavigationThrottle_ServiceNotReady) { … }
TEST_F(FirstPartySetsNavigationThrottleTest,
MaybeCreateNavigationThrottle_ServiceReady) { … }
TEST_F(FirstPartySetsNavigationThrottleTest, WillStartRequest_Defer) { … }
TEST_F(FirstPartySetsNavigationThrottleTest, WillStartRequest_Proceed) { … }
TEST_F(FirstPartySetsNavigationThrottleTest, ResumeOnReady) { … }
TEST_F(FirstPartySetsNavigationThrottleTest, ResumeOnTimeout) { … }
class FirstPartySetsNavigationThrottleNoDelayTest
: public FirstPartySetsNavigationThrottleTest { … };
TEST_F(FirstPartySetsNavigationThrottleNoDelayTest,
MaybeCreateNavigationThrottle) { … }
}