Lumiera  0.pre.03
»edit your freedom«
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_disabledCopySupport ()
 
void verify_fullVirtualCopySupport ()
 
void verify_noAssignementSupport ()
 
void verify_onlyMovableSupport ()
 
void verify_TestFixture ()
 

Member Function Documentation

◆ 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.

+ Inheritance diagram for VirtualCopySupport_test:
+ Collaboration diagram for VirtualCopySupport_test:

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