#include <stdint.h>
#include <optional>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
#include "base/base64.h"
#include "base/base_paths.h"
#include "base/check.h"
#include "base/check_op.h"
#include "base/files/file_enumerator.h"
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/json/json_reader.h"
#include "base/numerics/safe_conversions.h"
#include "base/path_service.h"
#include "base/strings/abseil_string_number_conversions.h"
#include "base/strings/string_number_conversions.h"
#include "base/test/gmock_expected_support.h"
#include "base/types/expected.h"
#include "base/values.h"
#include "components/attribution_reporting/parsing_utils.h"
#include "components/cbor/reader.h"
#include "components/cbor/values.h"
#include "content/browser/aggregation_service/aggregation_service_test_utils.h"
#include "content/browser/attribution_reporting/interop/parser.h"
#include "content/browser/attribution_reporting/interop/runner.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/abseil-cpp/absl/numeric/int128.h"
namespace content {
namespace {
AllOf;
Field;
UnorderedElementsAreArray;
struct AggregatableReportSharedInfo { … };
constexpr char kDefaultConfigFileName[] = …;
const aggregation_service::TestHpkeKey kHpkeKey;
base::FilePath GetInputDir() { … }
std::vector<base::FilePath> GetInputs() { … }
base::Value::Dict ParseDictFromFile(const base::FilePath& path) { … }
base::Value::List GetDecryptedPayloads(std::optional<base::Value> payloads,
const std::string& shared_info) { … }
void AdjustAggregatableReportBody(base::Value::Dict& report_body) { … }
class Adjuster : public ReportBodyAdjuster { … };
void PreProcessOutput(AttributionInteropOutput& output, const bool actual) { … }
class AttributionInteropTest : public ::testing::TestWithParam<base::FilePath> { … };
AttributionInteropConfig AttributionInteropTest::g_config_;
TEST_P(AttributionInteropTest, HasExpectedOutput) { … }
INSTANTIATE_TEST_SUITE_P(…);
}
}