#include <stdint.h>
#include <limits>
#include <optional>
#include <utility>
#include <vector>
#include "base/command_line.h"
#include "base/functional/callback.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/gmock_callback_support.h"
#include "base/time/time.h"
#include "base/values.h"
#include "components/attribution_reporting/aggregatable_debug_reporting_config.h"
#include "components/attribution_reporting/aggregation_keys.h"
#include "components/attribution_reporting/filters.h"
#include "components/attribution_reporting/os_registration.h"
#include "components/attribution_reporting/registrar.h"
#include "components/attribution_reporting/source_type.mojom.h"
#include "components/attribution_reporting/suitable_origin.h"
#include "components/attribution_reporting/trigger_registration.h"
#include "content/browser/attribution_reporting/aggregatable_debug_report.h"
#include "content/browser/attribution_reporting/attribution_debug_report.h"
#include "content/browser/attribution_reporting/attribution_input_event.h"
#include "content/browser/attribution_reporting/attribution_internals_ui.h"
#include "content/browser/attribution_reporting/attribution_manager.h"
#include "content/browser/attribution_reporting/attribution_os_level_manager.h"
#include "content/browser/attribution_reporting/attribution_report.h"
#include "content/browser/attribution_reporting/attribution_reporting.mojom.h"
#include "content/browser/attribution_reporting/attribution_test_utils.h"
#include "content/browser/attribution_reporting/attribution_trigger.h"
#include "content/browser/attribution_reporting/create_report_result.h"
#include "content/browser/attribution_reporting/os_registration.h"
#include "content/browser/attribution_reporting/process_aggregatable_debug_report_result.mojom.h"
#include "content/browser/attribution_reporting/send_result.h"
#include "content/browser/attribution_reporting/storable_source.h"
#include "content/browser/attribution_reporting/store_source_result.h"
#include "content/browser/attribution_reporting/stored_source.h"
#include "content/browser/attribution_reporting/test/mock_attribution_manager.h"
#include "content/browser/attribution_reporting/test/mock_content_browser_client.h"
#include "content/browser/storage_partition_impl.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browsing_data_filter_builder.h"
#include "content/public/browser/global_routing_id.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/content_switches.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/test_utils.h"
#include "content/shell/browser/shell.h"
#include "net/base/net_errors.h"
#include "net/base/schemeful_site.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "third_party/blink/public/mojom/aggregation_service/aggregatable_report.mojom.h"
#include "url/origin.h"
namespace content {
namespace {
FilterConfig;
FilterPair;
OsRegistrationItem;
SuitableOrigin;
SourceType;
RunOnceCallback;
SentResult;
_;
ElementsAre;
IsNull;
Return;
const char kAttributionInternalsUrl[] = …;
const std::u16string kCompleteTitle = …;
const std::u16string kCompleteTitle2 = …;
const std::u16string kCompleteTitle3 = …;
const std::u16string kMaxInt64String = …;
const std::u16string kMaxUint64String = …;
AttributionReport IrreleventEventLevelReport() { … }
AttributionReport IrreleventAggregatableReport() { … }
}
class AttributionInternalsWebUiBrowserTest : public ContentBrowserTest { … };
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
NavigationUrl_ResolvedToWebUI) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithManager_MeasurementConsideredEnabled) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
DisabledByEmbedder_MeasurementConsideredDisabled) { … }
IN_PROC_BROWSER_TEST_F(
AttributionInternalsWebUiBrowserTest,
WebUIShownWithNoActiveImpression_NoImpressionsDisplayed) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithActiveImpression_ImpressionsDisplayed) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
OsRegistrationsShown) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithNoReports_NoReportsDisplayed) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithManager_DebugModeChanged) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithManager_OsSupportDisabled) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithManager_OsSupportEnabled) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIShownWithPendingReports_ReportsDisplayed) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUIWithPendingReportsClearStorage_ReportsRemoved) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
ClearButton_ClearsSourceTable) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUISendReport_ReportRemoved) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
MojoJsBindingsCorrectlyScoped) { … }
IN_PROC_BROWSER_TEST_F(
AttributionInternalsWebUiBrowserTest,
WebUIShownWithPendingAggregatableReports_ReportsDisplayed) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
TriggersDisplayed) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest,
WebUISendAggregatableReport_ReportRemoved) { … }
IN_PROC_BROWSER_TEST_F(AttributionInternalsWebUiBrowserTest, DebugReports) { … }
}