Test expected pointerlockchange and pointerlockerror events.

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


     Unlock.
     Lock targetDiv1.
PASS onpointerlockchange received after: Lock targetDiv1.
     Unlock again.
PASS onpointerlockchange received after: Unlock again.
     Lock targetDiv1 again.
PASS onpointerlockchange received after: Lock targetDiv1 again.
     Lock targetDiv2.
PASS onpointerlockchange received after: Lock targetDiv2.
     Lock targetDiv2 again.
PASS onpointerlockchange received after: Lock targetDiv2 again.
     Unlock targetDiv2.
PASS onpointerlockchange received after: Unlock targetDiv2.
     Lock targetIframe1.
     Lock targetIframe1 (handler for iframe1).
PASS onpointerlockchange received after: Lock targetIframe1 (handler for iframe1).
     Lock targetIframe2.
     Lock targetIframe2 (handler for iframe1).
     Lock targetIframe2 (handler for iframe2).
PASS onpointerlockerror received after: Lock targetIframe2 (handler for iframe2).
     Unlock targetIframe2.
     Unlock targetIframe2 (handler for iframe1).
     Unlock targetIframe2 (handler for iframe2).
PASS onpointerlockchange received after: Unlock targetIframe2 (handler for iframe1).
PASS testRunner.setPointerLockWillFailSynchronously is defined.
     Lock with synchronous failure.
PASS onpointerlockerror received after: Lock with synchronous failure.
PASS testRunner.setPointerLockWillRespondAsynchronously is defined.
PASS testRunner.didAcquirePointerLock is defined.
PASS testRunner.didNotAcquirePointerLock is defined.
     Lock with asynchronous failure.
PASS onpointerlockerror received after: Lock with asynchronous failure.
     Lock with asynchronous success.
PASS onpointerlockchange received after: Lock with asynchronous success.
PASS successfullyParsed is true

TEST COMPLETE

