distortos  v0.4.0
object-oriented C++ RTOS for microcontrollers
distortos::test::FpuSignalTestCase Class Reference

Tests saving of FPU context between thread, signal sender (interrupt or another thread) and signal handler. More...

#include <ARMv7-M-FpuSignalTestCase.hpp>

Inheritance diagram for distortos::test::FpuSignalTestCase:
[legend]
Collaboration diagram for distortos::test::FpuSignalTestCase:
[legend]

Public Member Functions

constexpr FpuSignalTestCase ()
 SignalsCatchingTestCase's constructor. More...
 
- Public Member Functions inherited from distortos::test::SignalsTestCaseCommon
constexpr SignalsTestCaseCommon (const uint8_t priority, const SignalSet signalMask, const SignalAction signalAction)
 SignalsTestCaseCommon's constructor. More...
 
- Public Member Functions inherited from distortos::test::PrioritizedTestCase
constexpr PrioritizedTestCase (const uint8_t priority)
 PrioritizedTestCase's constructor. More...
 
- Public Member Functions inherited from distortos::test::TestCase
bool run () const
 Public function to start the test case. More...
 

Static Public Member Functions

static constexpr uint8_t getTestCasePriority ()
 

Protected Member Functions

bool finalize () const override
 Finalizes the test case. More...
 
- Protected Member Functions inherited from distortos::test::SignalsTestCaseCommon
bool finalize () const override
 Finalizes the test case. More...
 
bool initialize () const override
 Initializes the test case. More...
 
- Protected Member Functions inherited from distortos::test::TestCaseCommon
bool finalize () const override
 Finalizes the test case. More...
 
bool initialize () const override
 Initializes the test case. More...
 

Private Member Functions

bool run_ () const override
 Runs the test case. More...
 

Static Private Attributes

static constexpr uint8_t testCasePriority_ {UINT8_MAX / 2}
 priority at which this test case should be executed More...
 

Detailed Description

Tests saving of FPU context between thread, signal sender (interrupt or another thread) and signal handler.

Various combinations of FPU usage (in main thread only, in signal sender (interrupt or another thread) only, in signal handler only and all possible combinations) are tested.

Constructor & Destructor Documentation

◆ FpuSignalTestCase()

constexpr distortos::test::FpuSignalTestCase::FpuSignalTestCase ( )
inline

SignalsCatchingTestCase's constructor.

Here is the call graph for this function:

Member Function Documentation

◆ finalize()

bool distortos::test::FpuSignalTestCase::finalize ( ) const
overrideprotectedvirtual

Finalizes the test case.

Disables FPU context for main thread and calls SignalsTestCaseCommon::finalize().

Returns
true if finalization succeeded, false otherwise

Implements distortos::test::TestCase.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getTestCasePriority()

static constexpr uint8_t distortos::test::FpuSignalTestCase::getTestCasePriority ( )
inlinestatic
Returns
priority at which this test case should be executed

◆ run_()

bool distortos::test::FpuSignalTestCase::run_ ( ) const
overrideprivatevirtual

Runs the test case.

Returns
true if the test case succeeded, false otherwise

Implements distortos::test::TestCase.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ testCasePriority_

constexpr uint8_t distortos::test::FpuSignalTestCase::testCasePriority_ {UINT8_MAX / 2}
staticprivate

priority at which this test case should be executed


The documentation for this class was generated from the following files: