Software APIs
mock_lifecycle.h
1 // Copyright lowRISC contributors (OpenTitan project).
2 // Licensed under the Apache License, Version 2.0, see LICENSE for details.
3 // SPDX-License-Identifier: Apache-2.0
4 
5 #ifndef OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_MOCK_LIFECYCLE_H_
6 #define OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_MOCK_LIFECYCLE_H_
7 
8 #include "sw/device/lib/base/global_mock.h"
9 #include "sw/device/silicon_creator/lib/drivers/lifecycle.h"
10 #include "sw/device/silicon_creator/testing/rom_test.h"
11 
12 namespace rom_test {
13 namespace internal {
14 
15 /**
16  * Mock class for lifecycle.c.
17  */
18 class MockLifecycle : public global_mock::GlobalMock<MockLifecycle> {
19  public:
20  MOCK_METHOD(lifecycle_state_t, State, ());
21  MOCK_METHOD(uint32_t, RawState, ());
22  MOCK_METHOD(void, DeviceId, (lifecycle_device_id_t * device_id));
23  MOCK_METHOD(void, HwRev, (lifecycle_hw_rev_t * hw_rev));
24 };
25 
26 } // namespace internal
27 
28 using MockLifecycle = testing::StrictMock<internal::MockLifecycle>;
29 
30 } // namespace rom_test
31 
32 #endif // OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_MOCK_LIFECYCLE_H_