Test support functions.
More...
|
file | test-info.h |
| This header file provides interfaces of the RTEMS Test Support.
|
|
file | test-printer.h |
| This header file provides interfaces of the RTEMS Test Support.
|
|
|
enum | RTEMS_TEST_STATE {
RTEMS_TEST_STATE_PASS
, RTEMS_TEST_STATE_FAIL
, RTEMS_TEST_STATE_USER_INPUT
, RTEMS_TEST_STATE_INDETERMINATE
,
RTEMS_TEST_STATE_BENCHMARK
} |
| Test states.
|
|
|
void | rtems_test_fatal_extension (rtems_fatal_source source, bool always_set_to_false, rtems_fatal_code code) |
| Fatal extension for tests.
|
|
int | rtems_test_begin (const char *name, const RTEMS_TEST_STATE state) |
| Prints a begin of test message using printf(). More...
|
|
int | rtems_test_end (const char *name) |
| Prints an end of test message using printf(). More...
|
|
RTEMS_NO_RETURN void | rtems_test_exit (int status) |
| Exit the test without calling exit() since it closes stdin, etc and pulls in stdio code.
|
|
void | rtems_test_parallel (rtems_test_parallel_context *ctx, rtems_test_parallel_worker_setup worker_setup, const rtems_test_parallel_job *jobs, size_t job_count) |
| Runs a bunch of jobs in parallel on all processors of the system. More...
|
|
void | rtems_test_busy_cpu_usage (time_t seconds, long nanoseconds) |
| Performs a busy loop for the specified seconds and nanoseconds based on the CPU usage of the executing thread. More...
|
|
RTEMS_NO_RETURN void | rtems_test_run (rtems_task_argument arg, const RTEMS_TEST_STATE state) |
| Runs the test cases of the RTEMS Test Framework using a default configuration in the context of a task. More...
|
|
void | rtems_test_gcov_dump_info (void) |
| Dumps the gcov information as a base64 encoded gcfn and gcda data stream using rtems_put_char().
|
|
int | rtems_test_printf (const char *format,...) RTEMS_PRINTFLIKE(1 |
| Prints via the RTEMS test printer. More...
|
|
|
const char | rtems_test_name [] |
| Each test must define a test name string.
|
|
rtems_printer | rtems_test_printer |
| Provides an RTEMS printer for tests.
|
|
Test support functions.
◆ rtems_test_parallel_worker_setup
Worker task setup handler.
Called during rtems_test_parallel() to optionally setup a worker task before it is started.
- Parameters
-
[in] | ctx | The parallel context. |
[in] | worker_index | The worker index. |
[in] | worker_id | The worker task identifier. |
◆ rtems_test_begin()
Prints a begin of test message using printf().
- Returns
- As specified by printf().
◆ rtems_test_busy_cpu_usage()
void rtems_test_busy_cpu_usage |
( |
time_t |
seconds, |
|
|
long |
nanoseconds |
|
) |
| |
Performs a busy loop for the specified seconds and nanoseconds based on the CPU usage of the executing thread.
This function continuously reads the CPU usage of the executing thread. This operation may lead to a scheduler instance lock contention in SMP configurations.
- Parameters
-
[in] | seconds | The busy seconds. |
[in] | nanoseconds | The busy nanoseconds. |
◆ rtems_test_end()
int rtems_test_end |
( |
const char * |
name | ) |
|
Prints an end of test message using printf().
- Returns
- As specified by printf().
◆ rtems_test_parallel()
Runs a bunch of jobs in parallel on all processors of the system.
The worker tasks inherit the priority of the executing task.
There are SMP barriers before and after the job body.
- Parameters
-
[in] | ctx | The parallel context. |
[in] | worker_setup | Optional handler to setup a worker task before it is started. |
[in] | jobs | The table of jobs. |
[in] | job_count | The count of jobs in the job table. |
◆ rtems_test_printf()
int rtems_test_printf |
( |
const char * |
format, |
|
|
|
... |
|
) |
| |
Prints via the RTEMS test printer.
- Returns
- Returns the count of output characters as specified by printf().
◆ rtems_test_run()
Runs the test cases of the RTEMS Test Framework using a default configuration in the context of a task.
The application must provide rtems_test_name.
- Parameters
-
arg | is the task argument. |
state | is the test state. |