Peano
Loading...
Searching...
No Matches
peano4::datamanagement::tests::DataMovementTest Class Reference

Test the function templates of VertexDataMovement.h, FaceDataMovement.h and CellDataMovement.h. More...

#include <DataMovementTest.h>

Inheritance diagram for peano4::datamanagement::tests::DataMovementTest:
Collaboration diagram for peano4::datamanagement::tests::DataMovementTest:

Public Member Functions

 DataMovementTest ()
 
void run () override
 This routine is triggered by the TestCaseCollection.
 
- Public Member Functions inherited from tarch::tests::TestCase
 TestCase (const std::string &testCaseName)
 Constructor.
 
virtual ~TestCase ()
 Destructor.
 
int getNumberOfErrors () const
 
std::string getTestCaseName () const
 

Private Member Functions

void testVertexLoadAndStore ()
 Load the 2^d vertices of a cell from the input stack, a temporary stack and as new vertex, then store them to the output stack, a temporary stack, or drop them.
 
void testFaceLoadAndStore ()
 Same as testVertexLoadAndStore() for the 2d faces of a cell.
 
void testCellLoadAndStore ()
 Load a cell from the input stack and store it to the output stack.
 
void testVertexSendAndReceive ()
 Send vertex data subject to the send predicate, the fork and join contexts, and the store flag.
 
void testCellSendAndReceive ()
 Same as testVertexSendAndReceive() for cells.
 

Additional Inherited Members

- Protected Member Functions inherited from tarch::tests::TestCase
 TestCase ()=delete
 
- Protected Attributes inherited from tarch::tests::TestCase
const std::string _testCaseName
 Name of the test case.
 
int _errors
 Error counter.
 
bool _error
 Indicate within macro if one specific validation failed.
 

Detailed Description

Test the function templates of VertexDataMovement.h, FaceDataMovement.h and CellDataMovement.h.

The tests use a small hand-written data type holding one integer, and an peano4::maps::STDStackMap over peano4::stacks::STDVectorStack. They build the traversal events by hand, i.e. they decide from which stack each vertex, face or cell is taken and to which stack it is written, and validate that the data ends up where the event says.

Definition at line 28 of file DataMovementTest.h.

Constructor & Destructor Documentation

◆ DataMovementTest()

peano4::datamanagement::tests::DataMovementTest::DataMovementTest ( )

Member Function Documentation

◆ run()

void peano4::datamanagement::tests::DataMovementTest::run ( )
overridevirtual

This routine is triggered by the TestCaseCollection.

Implements tarch::tests::TestCase.

◆ testCellLoadAndStore()

void peano4::datamanagement::tests::DataMovementTest::testCellLoadAndStore ( )
private

Load a cell from the input stack and store it to the output stack.

Load a new cell and drop it.

◆ testCellSendAndReceive()

void peano4::datamanagement::tests::DataMovementTest::testCellSendAndReceive ( )
private

Same as testVertexSendAndReceive() for cells.

◆ testFaceLoadAndStore()

void peano4::datamanagement::tests::DataMovementTest::testFaceLoadAndStore ( )
private

Same as testVertexLoadAndStore() for the 2d faces of a cell.

◆ testVertexLoadAndStore()

void peano4::datamanagement::tests::DataMovementTest::testVertexLoadAndStore ( )
private

Load the 2^d vertices of a cell from the input stack, a temporary stack and as new vertex, then store them to the output stack, a temporary stack, or drop them.

Repeat the store with a flag which does not store persistently: the data on the output stack is then dropped, the data on temporary stacks is not.

◆ testVertexSendAndReceive()

void peano4::datamanagement::tests::DataMovementTest::testVertexSendAndReceive ( )
private

Send vertex data subject to the send predicate, the fork and join contexts, and the store flag.

Receive vertex data subject to the receive predicate and merge it.


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