Verifies that for .mediaElement getters, a wrapper that corresponds to the actual element is created.

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


PASS source.mediaElement.nonExistentProperty is undefined.
PASS source.mediaElement.nonExistentProperty is undefined.
PASS successfullyParsed is true

TEST COMPLETE

