#include "components/fingerprinting_protection_filter/browser/fingerprinting_protection_child_navigation_throttle.h"
#include <memory>
#include <string>
#include "base/functional/bind.h"
#include "base/strings/stringprintf.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/scoped_feature_list.h"
#include "components/fingerprinting_protection_filter/common/fingerprinting_protection_filter_features.h"
#include "components/subresource_filter/content/shared/browser/child_frame_navigation_test_utils.h"
#include "components/subresource_filter/core/mojom/subresource_filter.mojom.h"
#include "content/public/browser/navigation_handle.h"
#include "content/public/test/navigation_simulator.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h"
namespace fingerprinting_protection_filter {
namespace {
ChildFrameNavigationFilteringThrottleTestHarness;
SimulateCommitAndGetResult;
SimulateRedirectAndGetResult;
SimulateStartAndGetResult;
const char kDisallowedConsoleMessageFormat[] = …;
const char kFilterDelayDisallowed[] = …;
const char kFilterDelayWouldDisallow[] = …;
const char kFilterDelayAllowed[] = …;
class FingerprintingProtectionChildNavigationThrottleTest
: public ChildFrameNavigationFilteringThrottleTestHarness { … };
TEST_F(FingerprintingProtectionChildNavigationThrottleTest, DelayMetrics) { … }
TEST_F(FingerprintingProtectionChildNavigationThrottleTest,
DelayMetricsDryRun) { … }
class FingerprintingProtectionChildNavigationThrottleCnameTest
: public FingerprintingProtectionChildNavigationThrottleTest { … };
TEST_F(FingerprintingProtectionChildNavigationThrottleCnameTest,
FilterOnWillProcessResponse) { … }
TEST_F(FingerprintingProtectionChildNavigationThrottleCnameTest,
DryRunOnWillProcessResponse) { … }
TEST_F(FingerprintingProtectionChildNavigationThrottleCnameTest,
AllowedDnsAliasesShouldNotFilter) { … }
}
}