blob: 560dbf9d0350906b0f8ba07dccd7af10e7092663 [file] [log] [blame]
// Copyright 2024 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#pragma once
#include "google3/host_commands.h"
#include "payload_update.hpp"
#include <gmock/gmock.h>
namespace google
{
namespace hoth
{
namespace internal
{
class PayloadUpdateMock : public PayloadUpdate
{
public:
MOCK_CONST_METHOD0(initiate, void());
MOCK_CONST_METHOD2(erase, void(const uint32_t, const uint32_t));
MOCK_CONST_METHOD2(read, void(uint32_t, std::span<uint8_t>));
MOCK_CONST_METHOD0(verify, void());
MOCK_CONST_METHOD0(getStatus, payload_update_status());
MOCK_CONST_METHOD2(activate, void(Side, Persistence));
MOCK_CONST_METHOD3(confirm, std::optional<payload_update_confirm_response>(
enum payload_update_confirm_option,
uint32_t, uint64_t));
MOCK_CONST_METHOD1(send, void(const std::string&));
MOCK_CONST_METHOD1(eraseAndSendStaticWP, void(const std::string&));
MOCK_CONST_METHOD2(findDescriptor, bool(const std::string&, uint32_t*));
MOCK_CONST_METHOD2(eraseAndSendStaticWPRegions,
void(const std::string&, uint32_t));
};
} // namespace internal
} // namespace hoth
} // namespace google