1545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochdescription("Tests that when a Geolocation request is made from a remote frame, callbacks are made as usual.");
2545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
3545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochfunction onIframeReady() {
4545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    // Make request from remote frame
5545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    iframe.contentWindow.navigator.geolocation.getCurrentPosition(function() {
6545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        testPassed('Success callback invoked');
7545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        finishJSTest();
8545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    }, function() {
9545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        testFailed('Error callback invoked unexpectedly');
10545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch        finishJSTest();
11545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch    });
12545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch}
13545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
14545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochvar iframe = document.createElement('iframe');
15545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochiframe.src = 'resources/callback-to-remote-context-inner.html';
16545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochdocument.body.appendChild(iframe);
17545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch
18545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochwindow.jsTestIsAsync = true;
19545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdochwindow.successfullyParsed = true;
20