Software APIs
sw
device
silicon_creator
lib
drivers
mock_hmac.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_HMAC_H_
6
#define OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_MOCK_HMAC_H_
7
8
#include "sw/device/lib/base/global_mock.h"
9
#include "sw/device/silicon_creator/lib/drivers/hmac.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 hmac.c.
17
*/
18
class
MockHmac
:
public
global_mock::GlobalMock
<MockHmac> {
19
public
:
20
MOCK_METHOD(
void
, sha256_configure, (
bool
));
21
MOCK_METHOD(
void
, sha256_start, ());
22
MOCK_METHOD(
void
, sha256_init, ());
23
MOCK_METHOD(
void
, sha256_update, (
const
void
*,
size_t
));
24
MOCK_METHOD(
void
, sha256_update_words, (
const
uint32_t *,
size_t
));
25
MOCK_METHOD(
void
, sha256_process, ());
26
MOCK_METHOD(
void
, sha256_final_truncated, (uint32_t *,
size_t
));
27
MOCK_METHOD(
void
, sha256_final, (
hmac_digest_t
*));
28
MOCK_METHOD(
void
, sha256, (
const
void
*,
size_t
,
hmac_digest_t
*));
29
MOCK_METHOD(
void
, sha256_save, (
hmac_context_t
*));
30
MOCK_METHOD(
void
, sha256_restore, (
const
hmac_context_t
*));
31
};
32
33
}
// namespace internal
34
35
using
MockHmac = testing::StrictMock<internal::MockHmac>;
36
37
}
// namespace rom_test
38
39
#endif
// OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_DRIVERS_MOCK_HMAC_H_
Return to
OpenTitan Documentation