1 /* This test simulator is designed to simulate ux_utility_ APIs for test. */ 2 3 #ifndef _UX_TEST_UTILITY_SIM_H 4 #define _UX_TEST_UTILITY_SIM_H 5 6 VOID ux_test_sim_inp_sequence_set(ULONG* seq, ULONG size); 7 VOID ux_test_sim_outp_logbuf_set(ULONG* buf, ULONG size); 8 ULONG ux_test_sim_outp_log_get(ULONG seq, ULONG *addr, ULONG *value); 9 ULONG ux_test_sim_outp_log_count(VOID); 10 VOID ux_test_sim_outp_log_reset(VOID); 11 12 VOID ux_test_utility_sim_sem_create_count_reset (VOID); 13 ULONG ux_test_utility_sim_sem_create_count (VOID); 14 15 VOID ux_test_utility_sim_sem_error_generation_start(ULONG fail_after); 16 VOID ux_test_utility_sim_sem_error_generation_stop (VOID); 17 18 VOID ux_test_utility_sim_sem_get_count_reset (VOID); 19 ULONG ux_test_utility_sim_sem_get_count (VOID); 20 21 VOID ux_test_utility_sim_sem_get_error_exception_reset(VOID); 22 VOID ux_test_utility_sim_sem_get_error_exception_add(TX_SEMAPHORE *semaphore, ULONG semaphore_signal); 23 VOID ux_test_utility_sim_sem_get_error_generation_start(ULONG fail_after); 24 VOID ux_test_utility_sim_sem_get_error_generation_stop (VOID); 25 26 VOID ux_test_utility_sim_mutex_create_count_reset (VOID); 27 ULONG ux_test_utility_sim_mutex_create_count (VOID); 28 29 VOID ux_test_utility_sim_mutex_error_generation_start(ULONG fail_after); 30 VOID ux_test_utility_sim_mutex_error_generation_stop (VOID); 31 32 #if 0 /* Current Mutex ON/OFF has no return code. */ 33 VOID ux_test_utility_sim_mutex_on_count_reset (VOID); 34 ULONG ux_test_utility_sim_mutex_on_count (VOID); 35 VOID ux_test_utility_sim_mutex_on_error_generation_start(ULONG fail_after); 36 VOID ux_test_utility_sim_mutex_on_error_generation_stop (VOID); 37 #endif 38 39 VOID ux_test_utility_sim_event_create_count_reset (VOID); 40 ULONG ux_test_utility_sim_event_create_count (VOID); 41 VOID ux_test_utility_sim_event_error_generation_start(ULONG fail_after); 42 VOID ux_test_utility_sim_event_error_generation_stop (VOID); 43 44 VOID ux_test_utility_sim_thread_create_count_reset (VOID); 45 ULONG ux_test_utility_sim_thread_create_count (VOID); 46 VOID ux_test_utility_sim_thread_error_generation_start(ULONG fail_after); 47 VOID ux_test_utility_sim_thread_error_generation_stop (VOID); 48 49 VOID ux_test_utility_sim_mem_allocate_until_align_flagged(ULONG target_fail_level, ULONG memory_alignment, ULONG memory_cache_flag); 50 51 #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) 52 53 VOID ux_test_utility_sim_mem_free_all_flagged (ULONG memory_cache_flag); 54 55 #define ux_test_utility_sim_mem_allocate_until(l) ux_test_utility_sim_mem_allocate_until_flagged((l), UX_REGULAR_MEMORY) 56 #define ux_test_utility_sim_mem_free_all() ux_test_utility_sim_mem_free_all_flagged(UX_REGULAR_MEMORY) 57 58 VOID ux_test_utility_sim_mem_alloc_log_enable(UCHAR enable_disable); 59 VOID ux_test_utility_sim_mem_alloc_log_lock(VOID); 60 ULONG ux_test_utility_sim_mem_alloc_count(VOID); 61 VOID ux_test_utility_sim_mem_alloc_count_reset(VOID); 62 VOID ux_test_utility_sim_mem_alloc_error_generation_start(ULONG fail_after); 63 VOID ux_test_utility_sim_mem_alloc_error_generation_stop(VOID); 64 UINT ux_test_utility_sim_mem_alloc_error_generation_active(VOID); 65 66 VOID ux_test_utility_sim_mem_alloc_fail_all_start(VOID); 67 VOID ux_test_utility_sim_mem_alloc_fail_all_stop(VOID); 68 69 VOID ux_test_utility_sim_cleanup(VOID); 70 71 #endif /* _UX_TEST_UTILITY_SIM_H */ 72