#include "content/browser/web_package/signed_exchange_signature_verifier.h"
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/path_service.h"
#include "base/test/metrics/histogram_tester.h"
#include "content/browser/web_package/signed_exchange_certificate_chain.h"
#include "content/browser/web_package/signed_exchange_envelope.h"
#include "content/browser/web_package/signed_exchange_signature_header_field.h"
#include "content/public/common/content_paths.h"
#include "net/cert/x509_certificate.h"
#include "net/test/cert_test_util.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace content {
namespace {
const uint64_t kSignatureHeaderDate = …;
const uint64_t kSignatureHeaderExpires = …;
constexpr char kSignatureHeaderECDSAP256[] = …;
constexpr uint8_t kCborHeadersECDSAP256[] = …;
constexpr char kSignatureHeaderECDSAP384[] = …;
constexpr char kSignatureHeaderInvalidExpires[] = …;
scoped_refptr<net::X509Certificate> LoadCertificate(
const std::string& cert_file) { … }
}
class SignedExchangeSignatureVerifierTest
: public ::testing::TestWithParam<SignedExchangeVersion> { … };
TEST_P(SignedExchangeSignatureVerifierTest, VerifyECDSAP256) { … }
TEST_P(SignedExchangeSignatureVerifierTest, VerifyECDSAP384) { … }
INSTANTIATE_TEST_SUITE_P(…);
}