RTEMS 6.3
Loading...
Searching...
No Matches
spec:/score/interr/val/terminate

Tests system termination procedure. More...

Files

file  testsuites/validation/tc-terminate.c
file  testsuites/validation/tc-userext.h
 This header file provides functions used by corresponding test suite.

Data Structures

struct  FatalInfo

Functions

void * __real__CPU_Thread_Idle_body (void *arg)
void * __wrap__CPU_Thread_Idle_body (void *arg)
void FatalExtension0 (rtems_fatal_source source, bool always_set_to_false, rtems_fatal_code code)
void FatalExtension1 (rtems_fatal_source source, bool always_set_to_false, rtems_fatal_code code)
 T_TEST_CASE (ScoreInterrValTerminate)

Detailed Description

Tests system termination procedure.

This test case performs the following actions:

  • Create five dynamic extensions. Call the system termination procedure. Delete three dynamic extension during the fatal extension invocation. Delete the two remaining dynamic extensions.
    • Delete the dynamic extension sets.
    • Check that the fatal extensions were invoked with the expected source.
    • Check that the fatal extensions were invoked with the expected always set to false argument.
    • Check that the fatal extensions were invoked with the expected code.
    • Check that the fatal extensions were invoked in forward order.
    • Check that the fatal extension in the deleted extension set was not invoked.
    • Check that maskable interrupts were enabled for the user extensions. Check that the idle loop executes with maskable interrupts disabled.
    • Check that an idle loop executed after invocation of the user extensions.