Pointer Events hoverable pointer attributes test

Follow the test instructions with mouse. If you don't have the device skip it.

Test Description: This test checks the properties of hoverable pointer events. If you are using hoverable pen don't leave the range of digitizer while doing the instructions.
Move your pointer over the black square and click on it.
Then move it off the black square so that it disappears.
When red square appears move your pointer over the red square and click on it.
Then move it off the red square.
Test passes if the proper behavior of the events is observed.



Harness Error (TIMEOUT), message = null

NOTRUN mouse pointerevent attributes 

