123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- // Copyright 2004-present Facebook. All Rights Reserved.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- namespace Facebook\WebDriver;
- /**
- * WebDriver interface implemented by drivers that support JavaScript.
- */
- interface JavaScriptExecutor
- {
- /**
- * Inject a snippet of JavaScript into the page for execution in the context
- * of the currently selected frame. The executed script is assumed to be
- * synchronous and the result of evaluating the script will be returned.
- *
- * @param string $script The script to inject.
- * @param array $arguments The arguments of the script.
- * @return mixed The return value of the script.
- */
- public function executeScript($script, array $arguments = []);
- /**
- * Inject a snippet of JavaScript into the page for asynchronous execution in
- * the context of the currently selected frame.
- *
- * The driver will pass a callback as the last argument to the snippet, and
- * block until the callback is invoked.
- *
- * @see WebDriverExecuteAsyncScriptTestCase
- *
- * @param string $script The script to inject.
- * @param array $arguments The arguments of the script.
- * @return mixed The value passed by the script to the callback.
- */
- public function executeAsyncScript($script, array $arguments = []);
- }
|