[Chromium] Allow asyncronous response of pointer lock requests in layout tests.
https://bugs.webkit.org/show_bug.cgi?id=95628

Reviewed by James Robinson.

Tools:

Future tests need the ability to respond asynchronously that
pointer lock requests have been accepted or rejected. This patch
adds the following:
    testRunner.setPointerLockWillRespondAsynchronously();
    testRunner.didAcquirePointerLock();
    testRunner.didNotAcquirePointerLock();

Tested in existing test:
    pointerlockchange-pointerlockerror-events.html

* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::didAcquirePointerLock):
(DRTTestRunner::didNotAcquirePointerLock):
(DRTTestRunner::setPointerLockWillRespondAsynchronously):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::requestPointerLock):
(WebViewHost::didAcquirePointerLock):
(WebViewHost::didNotAcquirePointerLock):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):
(WebViewHost::setPointerLockWillRespondAsynchronously):

LayoutTests:

Add testing for testRunner.setPointerLockWillRespondAsynchronously().

* pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt:
* pointer-lock/pointerlockchange-pointerlockerror-events.html:

git-svn-id: svn://svn.chromium.org/blink/trunk@127473 bbb929c8-8fbe-4397-9dbb-9b2b20218538
diff --git a/third_party/WebKit/LayoutTests/ChangeLog b/third_party/WebKit/LayoutTests/ChangeLog
index dc6d905b..6e1892d 100644
--- a/third_party/WebKit/LayoutTests/ChangeLog
+++ b/third_party/WebKit/LayoutTests/ChangeLog
@@ -1,3 +1,15 @@
+2012-09-04  Vincent Scheib  <[email protected]>
+
+        [Chromium] Allow asyncronous response of pointer lock requests in layout tests.
+        https://bugs.webkit.org/show_bug.cgi?id=95628
+
+        Reviewed by James Robinson.
+
+        Add testing for testRunner.setPointerLockWillRespondAsynchronously().
+
+        * pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt:
+        * pointer-lock/pointerlockchange-pointerlockerror-events.html:
+
 2012-09-04  Andrei Bucur  <[email protected]>
 
         [CSS Regions] Destroying a render named flow thread without unregistering left-over content nodes triggered an assertion.
diff --git a/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt b/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt
index f75145ef..ab6df58 100644
--- a/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt
+++ b/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt
@@ -30,9 +30,13 @@
 PASS testRunner.setPointerLockWillFailSynchronously is defined.
      Lock with synchronous failure.
 PASS onwebkitpointerlockerror received after: Lock with synchronous failure.
-PASS testRunner.setPointerLockWillFailAsynchronously is defined.
+PASS testRunner.setPointerLockWillRespondAsynchronously is defined.
+PASS testRunner.didAcquirePointerLock is defined.
+PASS testRunner.didNotAcquirePointerLock is defined.
      Lock with asynchronous failure.
 PASS onwebkitpointerlockerror received after: Lock with asynchronous failure.
+     Lock with asynchronous success.
+PASS onwebkitpointerlockchange received after: Lock with asynchronous success.
 PASS successfullyParsed is true
 
 TEST COMPLETE
diff --git a/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events.html b/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events.html
index b652fe0..7e485f94 100644
--- a/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events.html
+++ b/third_party/WebKit/LayoutTests/pointer-lock/pointerlockchange-pointerlockerror-events.html
@@ -82,10 +82,25 @@
             targetDiv1.webkitRequestPointerLock();
         },
         function () {
-            shouldBeDefined("testRunner.setPointerLockWillFailAsynchronously");
-            testRunner.setPointerLockWillFailAsynchronously();
+            shouldBeDefined("testRunner.setPointerLockWillRespondAsynchronously");
+            shouldBeDefined("testRunner.didAcquirePointerLock");
+            shouldBeDefined("testRunner.didNotAcquirePointerLock");
+            testRunner.setPointerLockWillRespondAsynchronously();
             expectOnlyErrorEvent("Lock with asynchronous failure.");
             targetDiv1.webkitRequestPointerLock();
+            doNextStep();
+        },
+        function () {
+            testRunner.didNotAcquirePointerLock();
+        },
+        function () {
+            testRunner.setPointerLockWillRespondAsynchronously();
+            expectOnlyChangeEvent("Lock with asynchronous success.");
+            targetDiv1.webkitRequestPointerLock();
+            doNextStep();
+        },
+        function () {
+            testRunner.didAcquirePointerLock();
         },
     ];
     doNextStep();