#include <memory>
#include <optional>
#include <string>
#include <string_view>
#include <vector>
#include "services/network/public/mojom/trust_tokens.mojom-shared.h"
#include "services/network/trust_tokens/boringssl_trust_token_issuance_cryptographer.h"
#include "services/network/trust_tokens/boringssl_trust_token_redemption_cryptographer.h"
#include "services/network/trust_tokens/boringssl_trust_token_test_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/boringssl/src/include/openssl/base.h"
#include "third_party/boringssl/src/include/openssl/trust_token.h"
#include "url/gurl.h"
#include "url/origin.h"
namespace network {
namespace {
const mojom::TrustTokenProtocolVersion kProtocolVersion = …;
constexpr size_t kNumTokensToRequest = …;
std::string_view as_string(base::span<const uint8_t> bytes) { … }
std::string_view as_string(const std::vector<uint8_t>& bytes) { … }
void RequestManyTokensAndRetainOneArbitrarily(
const TestTrustTokenIssuer& issuer,
const TestTrustTokenIssuer::VerificationKey& key_with_which_to_issue,
TrustToken* out_token) { … }
void RedeemSingleToken(const TestTrustTokenIssuer& issuer,
const TrustToken& token_to_redeem) { … }
}
TEST(TrustTokenCryptographersTest, IssuanceAndRedemption) { … }
TEST(TrustTokenCryptographersTest, IssuanceAndRedemptionWithMultipleKeys) { … }
}