5 #ifndef OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_BASE_MOCK_CSR_H_
6 #define OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_BASE_MOCK_CSR_H_
8 #include "gmock/gmock.h"
9 #include "gtest/gtest.h"
11 #include "sw/device/lib/base/global_mock.h"
19 MOCK_METHOD(uint32_t, Read, (uint32_t csr));
20 MOCK_METHOD(
void, Write, (uint32_t csr, uint32_t value));
21 MOCK_METHOD(
void, SetBits, (uint32_t csr, uint32_t mask));
22 MOCK_METHOD(
void, ClearBits, (uint32_t csr, uint32_t mask));
26 using MockCsr = testing::StrictMock<internal::MockCsr>;
39 #define EXPECT_CSR_READ(csr, value) \
40 EXPECT_CALL(::mock_csr::MockCsr::Instance(), Read(csr)) \
41 .WillOnce(::testing::Return(value))
52 #define EXPECT_CSR_WRITE(csr, value) \
53 EXPECT_CALL(::mock_csr::MockCsr::Instance(), Write(csr, value))
64 #define EXPECT_CSR_SET_BITS(csr, mask) \
65 EXPECT_CALL(::mock_csr::MockCsr::Instance(), SetBits(csr, mask))
76 #define EXPECT_CSR_CLEAR_BITS(csr, mask) \
77 EXPECT_CALL(::mock_csr::MockCsr::Instance(), ClearBits(csr, mask))