blob: 3df5dcd6832a9d5a76e760f6a24c30f61acb0d34 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
/***************************************************************************/
/* Copyright (c) 2024 Microsoft Corporation */
/* Copyright (c) 2026 Eclipse ThreadX contributors */
/* */
/* This program and the accompanying materials are made available under */
/* the terms of the MIT License which is available at */
/* https://opensource.org/licenses/MIT. */
/* */
/* SPDX-License-Identifier: MIT */
/***************************************************************************/
/* This test simulator is designed to simulate ux_utility_ APIs for test. */
#ifndef _UX_TEST_UTILITY_SIM_H
#define _UX_TEST_UTILITY_SIM_H
VOID ux_test_sim_inp_sequence_set(ULONG* seq, ULONG size);
VOID ux_test_sim_outp_logbuf_set(ULONG* buf, ULONG size);
ULONG ux_test_sim_outp_log_get(ULONG seq, ULONG *addr, ULONG *value);
ULONG ux_test_sim_outp_log_count(VOID);
VOID ux_test_sim_outp_log_reset(VOID);
VOID ux_test_utility_sim_sem_create_count_reset (VOID);
ULONG ux_test_utility_sim_sem_create_count (VOID);
VOID ux_test_utility_sim_sem_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_sem_error_generation_stop (VOID);
VOID ux_test_utility_sim_sem_get_count_reset (VOID);
ULONG ux_test_utility_sim_sem_get_count (VOID);
VOID ux_test_utility_sim_sem_get_error_exception_reset(VOID);
VOID ux_test_utility_sim_sem_get_error_exception_add(TX_SEMAPHORE *semaphore, ULONG semaphore_signal);
VOID ux_test_utility_sim_sem_get_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_sem_get_error_generation_stop (VOID);
VOID ux_test_utility_sim_mutex_create_count_reset (VOID);
ULONG ux_test_utility_sim_mutex_create_count (VOID);
VOID ux_test_utility_sim_mutex_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_mutex_error_generation_stop (VOID);
#if 0 /* Current Mutex ON/OFF has no return code. */
VOID ux_test_utility_sim_mutex_on_count_reset (VOID);
ULONG ux_test_utility_sim_mutex_on_count (VOID);
VOID ux_test_utility_sim_mutex_on_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_mutex_on_error_generation_stop (VOID);
#endif
VOID ux_test_utility_sim_event_create_count_reset (VOID);
ULONG ux_test_utility_sim_event_create_count (VOID);
VOID ux_test_utility_sim_event_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_event_error_generation_stop (VOID);
VOID ux_test_utility_sim_thread_create_count_reset (VOID);
ULONG ux_test_utility_sim_thread_create_count (VOID);
VOID ux_test_utility_sim_thread_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_thread_error_generation_stop (VOID);
VOID ux_test_utility_sim_mem_allocate_until_align_flagged(ULONG target_fail_level, ULONG memory_alignment, ULONG memory_cache_flag);
#define ux_test_utility_sim_mem_allocate_until_flagged(fail_level, cache_flag) ux_test_utility_sim_mem_allocate_until_align_flagged(fail_level, UX_NO_ALIGN, cache_flag)
VOID ux_test_utility_sim_mem_free_all_flagged (ULONG memory_cache_flag);
#define ux_test_utility_sim_mem_allocate_until(l) ux_test_utility_sim_mem_allocate_until_flagged((l), UX_REGULAR_MEMORY)
#define ux_test_utility_sim_mem_free_all() ux_test_utility_sim_mem_free_all_flagged(UX_REGULAR_MEMORY)
VOID ux_test_utility_sim_mem_alloc_log_enable(UCHAR enable_disable);
VOID ux_test_utility_sim_mem_alloc_log_lock(VOID);
ULONG ux_test_utility_sim_mem_alloc_count(VOID);
VOID ux_test_utility_sim_mem_alloc_count_reset(VOID);
VOID ux_test_utility_sim_mem_alloc_error_generation_start(ULONG fail_after);
VOID ux_test_utility_sim_mem_alloc_error_generation_stop(VOID);
UINT ux_test_utility_sim_mem_alloc_error_generation_active(VOID);
VOID ux_test_utility_sim_mem_alloc_fail_all_start(VOID);
VOID ux_test_utility_sim_mem_alloc_fail_all_stop(VOID);
VOID ux_test_utility_sim_cleanup(VOID);
#endif /* _UX_TEST_UTILITY_SIM_H */
|