8 #ifndef META_OCEAN_TEST_TESTBASE_TEST_MOVE_BEHAVIOR_H
9 #define META_OCEAN_TEST_TESTBASE_TEST_MOVE_BEHAVIOR_H
50 void increment(
const bool constructor,
const bool copyConstructor,
const bool moveConstructor,
const bool assignOperator,
const bool moveOperator);
222 static bool test(
const double testDuration);
236 static bool testNonExceptObject(
const double testDuration);
This class implements a recursive lock object.
Definition: Lock.h:31
This template class is the base class for all singleton objects.
Definition: Singleton.h:71
Simple object with copy and move semantic with 'noexcept' keywords.
Definition: TestMoveBehavior.h:164
NonExceptObject & operator=(NonExceptObject &&object) noexcept
Move constructor.
NonExceptObject & operator=(const NonExceptObject &object)
Copy constructor.
NonExceptObject(NonExceptObject &&object) noexcept
Move constructor.
NonExceptObject(const int member)
Crates a new object.
NonExceptObject(const NonExceptObject &object)
Copy constructor.
Simple object with copy and move semantic without 'noexcept' keywords.
Definition: TestMoveBehavior.h:119
Object & operator=(Object &&object)
Move constructor.
Object(const int member)
Crates a new object.
Object & operator=(const Object &object)
Copy constructor.
Object(Object &&object)
Move constructor.
Object(const Object &object)
Copy constructor.
Simple helper class counting operations.
Definition: TestMoveBehavior.h:37
OperationCounter()
Default conststructor.
size_t assignOperator_
The assignOperator counter.
Definition: TestMoveBehavior.h:106
size_t copyConstructor() const
Returns the copyConstructor counter.
void increment(const bool constructor, const bool copyConstructor, const bool moveConstructor, const bool assignOperator, const bool moveOperator)
Increments individual operation counters.
size_t copyConstructor_
The copyConstructor counter.
Definition: TestMoveBehavior.h:100
size_t assignOperator() const
Returns the assignOperator counter.
Lock lock_
The lock object.
Definition: TestMoveBehavior.h:112
size_t constructor_
The constructor counter.
Definition: TestMoveBehavior.h:97
size_t moveOperator_
The moveOperator counter.
Definition: TestMoveBehavior.h:109
void reset()
Resets all counters.
size_t constructor() const
Returns the constructor counter.
size_t moveConstructor_
The moveConstructor counter.
Definition: TestMoveBehavior.h:103
size_t moveConstructor() const
Returns the moveConstructor counter.
size_t moveOperator() const
Returns the moveOperator counter.
This class tests the move behavior of the underlying C++ std implementation.
Definition: TestMoveBehavior.h:30
static bool test(const double testDuration)
Tests all lock functions.
std::vector< Object > Objects
Definition of a vector holding objects.
Definition: TestMoveBehavior.h:208
std::vector< NonExceptObject > NonExceptObjects
Definition of a vector holding objects.
Definition: TestMoveBehavior.h:213
static bool testDefaultObject(const double testDuration)
Tests the behavior for the default object.
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15