tests: Add documentation

This commit is contained in:
Sebastian Huber
2014-09-01 11:01:04 +02:00
parent c147a139c6
commit 4030cccfef
12 changed files with 97 additions and 17 deletions

View File

@@ -10,4 +10,9 @@ directives:
concepts:
- Ensure that the Newlib hooks works as expected.
- Reopen the standard output stream and ensure that buffered content is
written to the open file during thread termination.
- Ensure that the open file is closed after the write during thread
termination.
- Ensure that all resources are returned to the system using resouce
snapshots.

View File

@@ -4,8 +4,33 @@ test set name: smpatomic01
directives:
- ATOMIC_*
- _Atomic_*
- ATOMIC_INITIALIZER_FLAG
- ATOMIC_INITIALIZER_PTR()
- ATOMIC_INITIALIZER_UINT()
- ATOMIC_INITIALIZER_ULONG()
- _Atomic_Compare_exchange_uint()
- _Atomic_Compare_exchange_ulong()
- _Atomic_Exchange_uint()
- _Atomic_Exchange_ulong()
- _Atomic_Fence()
- _Atomic_Fetch_add_uint()
- _Atomic_Fetch_add_ulong()
- _Atomic_Fetch_and_uint()
- _Atomic_Fetch_and_ulong()
- _Atomic_Fetch_or_uint()
- _Atomic_Fetch_or_ulong()
- _Atomic_Fetch_sub_uint()
- _Atomic_Fetch_sub_ulong()
- _Atomic_Flag_clear()
- _Atomic_Flag_test_and_set()
- _Atomic_Init_ptr()
- _Atomic_Init_uint()
- _Atomic_Init_ulong()
- _Atomic_Load_ptr()
- _Atomic_Load_uint()
- _Atomic_Load_ulong()
- _Atomic_Store_uint()
- _Atomic_Store_ulong()
concepts:

View File

@@ -8,4 +8,6 @@ directives:
concepts:
- Ensure that inter-processor interrupts work as expected.
- Ensure that SMP message delivery works in the context of an SMP message
handler.
- Ensure that a flood of inter-processor interrupts works as expected.

View File

@@ -8,8 +8,9 @@ processor frequency of 800MHz.
directives:
- _Thread_Dispatch()
- _Scheduler_simple_smp_Allocate_processor()
- _Scheduler_SMP_Allocate_processor_lazy()
concepts:
- Ensure that thread migration works.
- Ensure that thread migration due to thread priority changes work on a two
processor system.

View File

@@ -4,9 +4,13 @@ test set name: smpmigration02
directives:
- _Scheduler_SMP_Allocate_processor()
- rtems_task_set_scheduler()
- _CPU_Context_switch()
- _Scheduler_SMP_Allocate_processor_lazy()
- _Thread_Dispatch()
concepts:
- Ensure that forced thread migration works.
- Ensure that forced thread migration via rtems_task_set_scheduler() works.
- Ensure that thread migration is cancelled in case _Thread_Dispatch() is
delayed and the processor assignment changes.

View File

@@ -6,10 +6,22 @@ directives:
- _MRSP_Initialize()
- _MRSP_Obtain()
- _MRSP_Timeout()
- _MRSP_Release()
- _MRSP_Get_ceiling_priority()
- _MRSP_Set_ceiling_priority()
concepts:
- Ensure that MrsP semaphores work.
- Ensure that rtems_semaphore_flush() returns an error status for MrsP
semaphores.
- Ensure that rtems_semaphore_create() for an initially locked semaphore
returns an error status for MrsP semaphores.
- Ensure that a nested obtain rtems_semaphore_obtain() returns an error
status for MrsP semaphores.
- Ensure that a rtems_semaphore_obtain() leading to a deadlock returns an
error status for MrsP semaphores.
- Ensure that it is possible to obtain multiple MrsP semaphores.
- Ensure that a timeout on MrsP semaphores works.
- Ensure that helping protocol for MrsP semaphores works.
- Ensure that heavy usage of multiple MrsP semaphores works.

View File

@@ -4,9 +4,8 @@ test set name: smpscheduler01
directives:
- _Scheduler_simple_smp_Enqueue_priority_fifo
- _Scheduler_simple_smp_Enqueue_priority_lifo
- _Scheduler_simple_smp_Extract
- _Scheduler_SMP_Enqueue_ordered()
- _Scheduler_SMP_Block()
concepts:

View File

@@ -4,9 +4,21 @@ test set name: smpscheduler02
directives:
- rtems_scheduler_ident()
- rtems_scheduler_get_processor_set()
- rtems_task_set_scheduler()
- rtems_task_get_scheduler()
- rtems_task_set_affinity()
- rtems_task_get_affinity()
- rtems_task_start()
concepts:
- Ensure that start of a thread for another partition works.
- Ensure that rtems_scheduler_get_processor_set() returns the proper
processor set.
- Test rtems_task_set_scheduler(), rtems_task_get_scheduler(),
rtems_task_set_affinity() and rtems_task_get_affinity() with various
parameter sets.
- Ensure that rtems_scheduler_ident() returns an error status in case the
scheduler exists but its processor set is empty.

View File

@@ -1,6 +1,6 @@
This file describes the directives and concepts tested by this test set.
test set name: smprestart01
test set name: smpthreadlife01
directives:

View File

@@ -5,7 +5,14 @@ test set name: smpunsupported01
directives:
- rtems_configuration_is_smp_enabled()
- rtems_task_mode()
- rtems_task_create()
concepts:
- Ensure that functions unsupported on SMP return an error status.
- Ensure that rtems_configuration_is_smp_enabled() return true on SMP
configurations.
- Ensure that rtems_task_mode() with RTEMS_NO_PREEMPT returns an error status
on SMP configurations.
- Ensure that rtems_task_create() with RTEMS_NO_PREEMPT returns an error
status on SMP configurations.

View File

@@ -6,8 +6,21 @@ directives:
- rtems_semaphore_create()
- rtems_semaphore_set_priority()
- rtems_semaphore_obtain()
- rtems_semaphore_release()
- rtems_semaphore_delete()
concepts:
- Ensure that the RTEMS_MULTIPROCESSOR_RESOURCE_SHARING attribute and
semaphores work on uni-processor configurations.
- Ensure that invalid attribute combinations with
RTEMS_MULTIPROCESSOR_RESOURCE_SHARING lead to an error status in
rtems_semaphore_create().
- Ensure that a MrsP semaphore behaves like a normal PCP semaphore on
uni-processor configurations.
- Ensure that invalid parameter values result in an error status in
rtems_semaphore_set_priority() using a counting semaphore.
- Ensure that rtems_semaphore_set_priority() works for valid parameters.
- Ensure that timeouts work for MrsP semaphores on uni-processor
configurations.
- Ensure that rtems_semaphore_release() fails for MrsP semaphores if the task
is not the resource owner on uni-processor configurations.

View File

@@ -9,5 +9,5 @@ directives:
concepts:
- Ensure that the task set/get affinity functions work on non-SMP
- Ensure that the task set/get affinity functions work on uni-processor
configurations.