|  | // 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 |