This tests that a polymorphic structure check is actually executed.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Passed some tests silently.

TEST COMPLETE

