23 #define LOOP_ITERATIONS_001 15U
24 #define LOOP_ITERATIONS_002 15U
27 #define WRITE_DATA "THE_FIVE_BOXING_WIZARDS_JUMP_QUICKLY"
28 #define WRITE_DATA_SIZE (sizeof(WRITE_DATA) - 1)
29 #define READ_DATA "############################################"
30 #define RESULT_DATA ("####" WRITE_DATA "####")
37 static struct test_t reliability_tests[] = {
38 {&tfm_ps_test_3001,
"TFM_PS_TEST_3001",
39 "repetitive sets and gets in/from an asset", {
TEST_PASSED} },
40 {&tfm_ps_test_3002,
"TFM_PS_TEST_3002",
41 "repetitive sets, gets and removes", {
TEST_PASSED} },
46 uint32_t list_size = (
sizeof(reliability_tests) /
47 sizeof(reliability_tests[0]));
50 reliability_tests, list_size, p_test_suite);
62 const uint32_t offset = 0;
66 size_t read_data_len = 0;
69 TEST_LOG(
" > Iteration %d of %d\r", itr + 1, LOOP_ITERATIONS_001);
72 status =
psa_ps_set(uid, data_len, write_data, flags);
74 TEST_FAIL(
"Set should not fail with valid UID");
79 status =
psa_ps_get(uid, offset, data_len, (read_data +
89 TEST_FAIL(
"The data should not have changed");
102 TEST_FAIL(
"Remove should not fail with valid UID");
118 const uint32_t offset = 0;
122 size_t read_data_len = 0;
125 TEST_LOG(
" > Iteration %d of %d\r", itr + 1, LOOP_ITERATIONS_002);
128 status =
psa_ps_set(uid, data_len, write_data, flags);
130 TEST_FAIL(
"Set should not fail with valid UID");
135 status =
psa_ps_get(uid, offset, data_len, (read_data +
145 TEST_FAIL(
"The data should not have changed");
152 TEST_FAIL(
"Remove should not fail with valid UID");
psa_status_t psa_ps_get(psa_storage_uid_t uid, size_t data_offset, size_t data_size, void *p_data, size_t *p_data_length)
Retrieve data associated with a provided uid.
#define TEST_FAIL(info_msg)
enum test_suite_err_t set_testsuite(const char *name, struct test_t *test_list, uint32_t size, struct test_suite_t *p_ts)
Sets test suite parameters.
psa_status_t psa_ps_set(psa_storage_uid_t uid, size_t data_length, const void *p_data, psa_storage_create_flags_t create_flags)
Create a new, or modify an existing, uid/value pair.
#define LOOP_ITERATIONS_002
psa_status_t psa_ps_remove(psa_storage_uid_t uid)
Remove the provided uid and its associated data from the storage.
#define HALF_PADDING_SIZE
__STATIC_INLINE void * tfm_memcpy(void *dest, const void *src, size_t num)
void register_testsuite_s_psa_ps_reliability(struct test_suite_t *p_test_suite)
Register testsuite for the ps reliability tests.
uint64_t psa_storage_uid_t
__STATIC_INLINE int tfm_memcmp(const void *ptr1, const void *ptr2, size_t num)
#define LOOP_ITERATIONS_001
#define PSA_STORAGE_FLAG_NONE
uint32_t psa_storage_create_flags_t
int32_t psa_status_t
Function return status.