ChimeraTK-ApplicationCore  04.01.00
Tests::testCircularDependencyFaultyFlags Namespace Reference

Classes

struct  AA
 
struct  BB
 
struct  CC
 
struct  CircularAppTestFixcture
 
struct  DD
 
struct  EE
 
struct  FF
 
struct  GG
 
struct  HH
 
struct  ModuleA
 ModuleA has two additional inputs to get invalidity flags. It is reading all inputs with ReadAny. More...
 
struct  ModuleC
 ModuleC has a trigger together with a readAll. More...
 
struct  ModuleD
 Involve the DeviceModule. Here are some variables from a test device. More...
 
struct  TestApplication1
 
struct  TestApplication2
 
struct  TestModuleBase
 The base module has the inputs and outputs for the circular dependency. More...
 
struct  TestModuleBase2
 

Functions

 BOOST_AUTO_TEST_CASE (TestCircularInputDetection)
 
 BOOST_FIXTURE_TEST_CASE (OneInvalidVariable, CircularAppTestFixcture< TestApplication1 >)
 
 BOOST_FIXTURE_TEST_CASE (TwoFaultyInOneModule, CircularAppTestFixcture< TestApplication1 >)
 
 BOOST_FIXTURE_TEST_CASE (OutputManuallyFaulty, CircularAppTestFixcture< TestApplication1 >)
 
 BOOST_FIXTURE_TEST_CASE (TwoFaultyInTwoModules, CircularAppTestFixcture< TestApplication1 >)
 
 BOOST_AUTO_TEST_CASE (TestCircularInputDetection2)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/2]

Tests::testCircularDependencyFaultyFlags::BOOST_AUTO_TEST_CASE ( TestCircularInputDetection  )

Tests Technical specification: data validity propagation

  • 4.1.1 Inputs which are part of a circular dependency are marked as circular input.
  • 4.1.1.1 (partly, DeviceModule and other ApplciationModules not tested) Inputs from CS are external inputs.
  • 4.1.2 All modules which have a circular dependency form a circular network.

Definition at line 200 of file testCircularDependencyFaultyFlags.cc.

+ Here is the call graph for this function:

◆ BOOST_AUTO_TEST_CASE() [2/2]

Tests::testCircularDependencyFaultyFlags::BOOST_AUTO_TEST_CASE ( TestCircularInputDetection2  )

Tests Technical specification: data validity propagation

  • 4.1.2.1 Entangled circles belong to the same circular network.
  • 4.1.2.2 There can be multiple disconnected circular networks.
  • 4.3.2 Each module and each circular input knows its circular network.

Definition at line 611 of file testCircularDependencyFaultyFlags.cc.

+ Here is the call graph for this function:

◆ BOOST_FIXTURE_TEST_CASE() [1/4]

Tests::testCircularDependencyFaultyFlags::BOOST_FIXTURE_TEST_CASE ( OneInvalidVariable  ,
CircularAppTestFixcture< TestApplication1  
)

Tests Technical specification: data validity propagation

  • 4.1.4 Propagation of the invalidity flag in a circle.
  • 4.1.5 Breaking the circular dependency.

This test intentionally does set more than one external input to faulty to make it easier to see where problems are coming from.

Definition at line 245 of file testCircularDependencyFaultyFlags.cc.

◆ BOOST_FIXTURE_TEST_CASE() [2/4]

Tests::testCircularDependencyFaultyFlags::BOOST_FIXTURE_TEST_CASE ( OutputManuallyFaulty  ,
CircularAppTestFixcture< TestApplication1  
)

Tests Technical specification: data validity propagation

  • 4.1.8 Programmatically setting an output to faulty behaves like external input faulty.

Definition at line 332 of file testCircularDependencyFaultyFlags.cc.

◆ BOOST_FIXTURE_TEST_CASE() [3/4]

Tests::testCircularDependencyFaultyFlags::BOOST_FIXTURE_TEST_CASE ( TwoFaultyInOneModule  ,
CircularAppTestFixcture< TestApplication1  
)

Tests Technical specification: data validity propagation

  • 4.1.5 Breaking the circular dependency only when all variables go to ok.

Definition at line 295 of file testCircularDependencyFaultyFlags.cc.

◆ BOOST_FIXTURE_TEST_CASE() [4/4]

Tests::testCircularDependencyFaultyFlags::BOOST_FIXTURE_TEST_CASE ( TwoFaultyInTwoModules  ,
CircularAppTestFixcture< TestApplication1  
)

Tests Technical specification: data validity propagation

  • 4.1.5 Breaking the circular dependency only when all variables go to ok.

Definition at line 406 of file testCircularDependencyFaultyFlags.cc.