blob: 1387d30c845a9c21d5d36efb7dab520dba72ee81 [file] [log] [blame]
// Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef MOCK_ATTESTATION_H_
#define MOCK_ATTESTATION_H_
#include "attestation.h"
#include <string>
#include <chromeos/secure_blob.h>
#include <gmock/gmock.h>
namespace cryptohome {
class Platform;
class MockAttestation : public Attestation {
public:
MockAttestation(): Attestation() { }
virtual ~MockAttestation() {}
MOCK_METHOD5(Initialize, void(Tpm*,
TpmInit*,
Platform*,
Crypto*,
InstallAttributes*));
MOCK_METHOD0(IsPreparedForEnrollment, bool());
MOCK_METHOD0(IsEnrolled, bool());
MOCK_METHOD0(PrepareForEnrollment, void());
MOCK_METHOD0(PrepareForEnrollmentAsync, void());
MOCK_METHOD0(Verify, bool());
MOCK_METHOD0(VerifyEK, bool());
MOCK_METHOD2(CreateEnrollRequest, bool(Attestation::PCAType,
chromeos::SecureBlob*));
MOCK_METHOD2(Enroll, bool(Attestation::PCAType,
const chromeos::SecureBlob&));
MOCK_METHOD5(CreateCertRequest, bool(Attestation::PCAType,
CertificateProfile,
const std::string&,
const std::string&,
chromeos::SecureBlob*));
MOCK_METHOD5(FinishCertRequest, bool(const chromeos::SecureBlob&,
bool,
const std::string&,
const std::string&,
chromeos::SecureBlob*));
MOCK_METHOD4(GetCertificateChain, bool(bool,
const std::string&,
const std::string&,
chromeos::SecureBlob*));
MOCK_METHOD4(GetPublicKey, bool(bool,
const std::string&,
const std::string&,
chromeos::SecureBlob*));
MOCK_METHOD3(DoesKeyExist, bool(bool,
const std::string&,
const std::string&));
MOCK_METHOD8(SignEnterpriseChallenge, bool(bool,
const std::string&,
const std::string&,
const std::string&,
const chromeos::SecureBlob&,
bool,
const chromeos::SecureBlob&,
chromeos::SecureBlob*));
MOCK_METHOD5(SignSimpleChallenge, bool(bool,
const std::string&,
const std::string&,
const chromeos::SecureBlob&,
chromeos::SecureBlob*));
MOCK_METHOD3(RegisterKey, bool(bool,
const std::string&,
const std::string&));
MOCK_METHOD4(GetKeyPayload, bool(bool,
const std::string&,
const std::string&,
chromeos::SecureBlob*));
MOCK_METHOD4(SetKeyPayload, bool(bool,
const std::string&,
const std::string&,
const chromeos::SecureBlob&));
MOCK_METHOD3(DeleteKeysByPrefix, bool(bool,
const std::string&,
const std::string&));
MOCK_METHOD1(GetEKInfo, bool(std::string*));
MOCK_METHOD2(GetIdentityResetRequest, bool(const std::string&,
chromeos::SecureBlob*));
MOCK_METHOD1(set_database_path, void(const char*));
MOCK_METHOD1(set_enterprise_test_key, void(RSA*));
MOCK_METHOD0(ThreadMain, void());
MOCK_METHOD0(OnFinalized, void());
};
} // namespace cryptohome
#endif /* !MOCK_ATTESTATION_H_ */