Test calling lock when already in a locked state.

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

PASS document.pointerLockElement is null
     Locking targetdiv1.
PASS document.onpointerlockchange event received.
PASS document.pointerLockElement is targetdiv1
     Locking targetdiv1, again.
PASS document.onpointerlockchange event received.
PASS document.pointerLockElement is targetdiv1
     Locking targetdiv2.
PASS document.onpointerlockchange event received.
PASS document.pointerLockElement is targetdiv2
PASS successfullyParsed is true

TEST COMPLETE

