While working on
DM-11971 I found that CmpMap was missing an override of copyPolymorphic. Improve the unit tests so this would be caught.
Consider removing the definition of copyPolymporphic and copy from Mapping, since that class is abstract. This may make it easier to detect omission in subclasses of Mapping, since such code will not compile. However, that still leaves deeper classes that could forget to override it, so unit testing is more important.
Finally, remove the virtual since it is implied by override.
Consider adding explicit @copydoc to copyPolymorphic, though Doxygen already shows the documentation.