Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
VirtualCopySupport_test Class Reference

Description

Test:
verify a mechanism to allow for cloning and placement new of opaque, type-erased entities. Basically we allow only assignments and copy between objects of the same concrete type, but we want to initiate those operations from the base interface, without any further knowledge about the actual types involved.

Definition at line 242 of file virtual-copy-support-test.cpp.

Private Member Functions

virtual void run (Arg)
 
void verify_TestFixture ()
 
void verify_fullVirtualCopySupport ()
 
void verify_noAssignementSupport ()
 
void verify_onlyMovableSupport ()
 
void verify_disabledCopySupport ()
 

Member Function Documentation

◆ run()

virtual void run ( Arg  )
inlineprivatevirtual

Definition at line 245 of file virtual-copy-support-test.cpp.

References VirtualCopySupport_test::verify_disabledCopySupport(), VirtualCopySupport_test::verify_fullVirtualCopySupport(), VirtualCopySupport_test::verify_noAssignementSupport(), VirtualCopySupport_test::verify_onlyMovableSupport(), and VirtualCopySupport_test::verify_TestFixture().

+ Here is the call graph for this function:

◆ verify_TestFixture()

void verify_TestFixture ( )
inlineprivate
Test:
our test fixture is comprised of
  • a common interface (#Interface)
  • a implementation template #Sub to hold a buffer and manage a distinct random value at some position in that buffer, which depends on the concrete implementation type
  • layered on top are adapters to make this implementation class either fully copyable, non-assignable, only movable or noncopyable.
  • a global checksum, based on the random value of all instances, which are incremented on construction and decremented on destruction. After destroying everything this checksum should go to zero. This test case just verifies this implementation mechanic.

Definition at line 276 of file virtual-copy-support-test.cpp.

Referenced by VirtualCopySupport_test::run().

+ Here is the caller graph for this function:

◆ verify_fullVirtualCopySupport()

void verify_fullVirtualCopySupport ( )
inlineprivate

Definition at line 358 of file virtual-copy-support-test.cpp.

References VERIFY_ERROR.

Referenced by VirtualCopySupport_test::run().

+ Here is the caller graph for this function:

◆ verify_noAssignementSupport()

void verify_noAssignementSupport ( )
inlineprivate

Definition at line 406 of file virtual-copy-support-test.cpp.

References VERIFY_ERROR.

Referenced by VirtualCopySupport_test::run().

+ Here is the caller graph for this function:

◆ verify_onlyMovableSupport()

void verify_onlyMovableSupport ( )
inlineprivate

Definition at line 452 of file virtual-copy-support-test.cpp.

References VERIFY_ERROR.

Referenced by VirtualCopySupport_test::run().

+ Here is the caller graph for this function:

◆ verify_disabledCopySupport()

void verify_disabledCopySupport ( )
inlineprivate

Definition at line 488 of file virtual-copy-support-test.cpp.

References VERIFY_ERROR.

Referenced by VirtualCopySupport_test::run().

+ Here is the caller graph for this function:
+ Inheritance diagram for VirtualCopySupport_test:
+ Collaboration diagram for VirtualCopySupport_test:

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