#ifndef NET_SSL_CLIENT_CERT_IDENTITY_TEST_UTIL_H_
#define NET_SSL_CLIENT_CERT_IDENTITY_TEST_UTIL_H_
#include "net/ssl/client_cert_identity.h"
namespace base {
class FilePath;
}
namespace net {
class FakeClientCertIdentity : public ClientCertIdentity {
public:
FakeClientCertIdentity(scoped_refptr<X509Certificate> cert,
scoped_refptr<SSLPrivateKey> key);
~FakeClientCertIdentity() override;
static std::unique_ptr<FakeClientCertIdentity> CreateFromCertAndKeyFiles(
const base::FilePath& dir,
const std::string& cert_filename,
const std::string& key_filename);
static std::unique_ptr<FakeClientCertIdentity> CreateFromCertAndFailSigning(
const base::FilePath& dir,
const std::string& cert_filename);
std::unique_ptr<FakeClientCertIdentity> Copy();
SSLPrivateKey* ssl_private_key() const { return key_.get(); }
void AcquirePrivateKey(base::OnceCallback<void(scoped_refptr<SSLPrivateKey>)>
private_key_callback) override;
private:
scoped_refptr<SSLPrivateKey> key_;
};
ClientCertIdentityList FakeClientCertIdentityListFromCertificateList(
const CertificateList& certs);
}
#endif