selenium-webdriver 2.48.2 → 2.53.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGES.md +116 -0
- package/NOTICE +1 -1
- package/README.md +59 -9
- package/builder.js +375 -358
- package/chrome.js +549 -586
- package/edge.js +378 -0
- package/error.js +9 -6
- package/example/google_search.js +1 -1
- package/example/google_search_generator.js +2 -4
- package/example/logging.js +6 -2
- package/example/sample.js +21 -0
- package/executors.js +11 -27
- package/firefox/binary.js +149 -98
- package/firefox/extension.js +15 -19
- package/firefox/index.js +256 -163
- package/firefox/profile.js +223 -243
- package/http/index.js +487 -81
- package/http/util.js +40 -36
- package/ie.js +288 -309
- package/index.js +34 -125
- package/io/exec.js +58 -39
- package/io/index.js +72 -60
- package/lib/README +4 -0
- package/lib/actions.js +596 -0
- package/lib/by.js +277 -0
- package/lib/capabilities.js +450 -0
- package/lib/{webdriver/command.js → command.js} +91 -72
- package/lib/{webdriver/button.js → devmode.js} +13 -8
- package/lib/error.js +690 -0
- package/lib/events.js +212 -0
- package/lib/firefox/amd64/libnoblur64.so +0 -0
- package/lib/firefox/i386/libnoblur.so +0 -0
- package/lib/firefox/webdriver.json +5 -1
- package/lib/firefox/webdriver.xpi +0 -0
- package/lib/{webdriver/key.js → input.js} +84 -2
- package/lib/logging.js +670 -0
- package/lib/{webdriver/promise.js → promise.js} +817 -644
- package/lib/safari/client.js +266 -214
- package/lib/session.js +80 -0
- package/lib/{webdriver/serializable.js → symbols.js} +16 -19
- package/lib/test/build.js +4 -4
- package/lib/test/data/click_tests/html5_submit_buttons.html +2 -1
- package/lib/test/data/click_tests/overlapping_elements.html +15 -4
- package/lib/test/data/click_tests/partially_overlapping_elements.html +124 -0
- package/lib/test/data/click_tests/wrapped_overlapping_elements.html +13 -0
- package/lib/test/data/hidden_partially.html +45 -0
- package/lib/test/data/readOnlyPage.html +1 -1
- package/lib/test/data/selectPage.html +18 -2
- package/lib/test/fileserver.js +3 -4
- package/lib/test/index.js +7 -3
- package/lib/test/resources.js +1 -1
- package/lib/until.js +376 -0
- package/lib/webdriver.js +2440 -0
- package/net/index.js +4 -0
- package/net/portprober.js +16 -12
- package/opera.js +295 -314
- package/package.json +6 -5
- package/phantomjs.js +144 -147
- package/proxy.js +10 -6
- package/remote/index.js +289 -238
- package/safari.js +326 -311
- package/test/chrome/options_test.js +11 -9
- package/test/element_finding_test.js +51 -13
- package/test/execute_script_test.js +17 -3
- package/test/firefox/firefox_test.js +0 -32
- package/test/http/http_test.js +671 -61
- package/test/http/util_test.js +25 -23
- package/test/io_test.js +67 -1
- package/test/lib/by_test.js +139 -0
- package/test/lib/capabilities_test.js +111 -0
- package/test/lib/error_test.js +325 -0
- package/test/lib/events_test.js +177 -0
- package/test/lib/logging_test.js +272 -0
- package/test/{promise_aplus_test.js → lib/promise_aplus_test.js} +4 -13
- package/test/lib/promise_error_test.js +808 -0
- package/test/lib/promise_flow_test.js +2282 -0
- package/test/lib/promise_generator_test.js +308 -0
- package/test/lib/promise_test.js +996 -0
- package/test/lib/testutil.js +90 -0
- package/test/lib/until_test.js +400 -0
- package/test/lib/webdriver_test.js +2157 -0
- package/test/page_loading_test.js +7 -9
- package/test/remote_test.js +50 -3
- package/test/session_test.js +53 -0
- package/test/stale_element_test.js +2 -2
- package/test/testing/assert_test.js +374 -0
- package/test/testing/index_test.js +9 -11
- package/testing/assert.js +334 -17
- package/testing/index.js +12 -2
- package/_base.js +0 -200
- package/docs/Changes.html +0 -356
- package/docs/class_bot_Error.html +0 -15
- package/docs/class_webdriver_ActionSequence.html +0 -115
- package/docs/class_webdriver_Alert.html +0 -24
- package/docs/class_webdriver_AlertPromise.html +0 -92
- package/docs/class_webdriver_Capabilities.html +0 -60
- package/docs/class_webdriver_Command.html +0 -15
- package/docs/class_webdriver_EventEmitter.html +0 -35
- package/docs/class_webdriver_FileDetector.html +0 -21
- package/docs/class_webdriver_Locator.html +0 -12
- package/docs/class_webdriver_Serializable.html +0 -9
- package/docs/class_webdriver_Session.html +0 -13
- package/docs/class_webdriver_TouchSequence.html +0 -49
- package/docs/class_webdriver_UnhandledAlertError.html +0 -18
- package/docs/class_webdriver_WebDriver.html +0 -313
- package/docs/class_webdriver_WebDriver_Logs.html +0 -15
- package/docs/class_webdriver_WebDriver_Navigation.html +0 -16
- package/docs/class_webdriver_WebDriver_Options.html +0 -41
- package/docs/class_webdriver_WebDriver_TargetLocator.html +0 -38
- package/docs/class_webdriver_WebDriver_Timeouts.html +0 -29
- package/docs/class_webdriver_WebDriver_Window.html +0 -27
- package/docs/class_webdriver_WebElement.html +0 -223
- package/docs/class_webdriver_WebElementPromise.html +0 -274
- package/docs/class_webdriver_http_Executor.html +0 -22
- package/docs/class_webdriver_http_Request.html +0 -12
- package/docs/class_webdriver_http_Response.html +0 -13
- package/docs/class_webdriver_logging_Entry.html +0 -15
- package/docs/class_webdriver_logging_Level.html +0 -55
- package/docs/class_webdriver_logging_LogRecord.html +0 -45
- package/docs/class_webdriver_logging_Logger.html +0 -119
- package/docs/class_webdriver_logging_Preferences.html +0 -8
- package/docs/class_webdriver_promise_CancellationError.html +0 -17
- package/docs/class_webdriver_promise_ControlFlow.html +0 -153
- package/docs/class_webdriver_promise_Deferred.html +0 -84
- package/docs/class_webdriver_promise_MultipleUnhandledRejectionError.html +0 -14
- package/docs/class_webdriver_promise_Promise.html +0 -75
- package/docs/class_webdriver_stacktrace_Frame.html +0 -20
- package/docs/class_webdriver_stacktrace_Snapshot.html +0 -6
- package/docs/class_webdriver_testing_Assertion.html +0 -99
- package/docs/class_webdriver_testing_Assertion_DelegatingMatcher_.html +0 -13
- package/docs/class_webdriver_testing_ContainsMatcher.html +0 -11
- package/docs/class_webdriver_testing_NegatedAssertion.html +0 -97
- package/docs/class_webdriver_until_Condition.html +0 -7
- package/docs/dossier.css +0 -1
- package/docs/dossier.js +0 -86
- package/docs/enum_bot_ErrorCode.html +0 -3
- package/docs/enum_bot_Error_State.html +0 -2
- package/docs/enum_webdriver_Browser.html +0 -2
- package/docs/enum_webdriver_Button.html +0 -2
- package/docs/enum_webdriver_Capability.html +0 -33
- package/docs/enum_webdriver_CommandName.html +0 -3
- package/docs/enum_webdriver_Key.html +0 -12
- package/docs/enum_webdriver_logging_Type.html +0 -6
- package/docs/enum_webdriver_promise_ControlFlow_EventType.html +0 -9
- package/docs/index.html +0 -125
- package/docs/interface_webdriver_CommandExecutor.html +0 -9
- package/docs/interface_webdriver_http_Client.html +0 -10
- package/docs/interface_webdriver_promise_Thenable.html +0 -77
- package/docs/module_selenium-webdriver.html +0 -23
- package/docs/module_selenium-webdriver__base.html +0 -23
- package/docs/module_selenium-webdriver__base_class_Context.html +0 -5
- package/docs/module_selenium-webdriver_builder.html +0 -2
- package/docs/module_selenium-webdriver_builder_class_Builder.html +0 -138
- package/docs/module_selenium-webdriver_chrome.html +0 -90
- package/docs/module_selenium-webdriver_chrome_class_Driver.html +0 -280
- package/docs/module_selenium-webdriver_chrome_class_Options.html +0 -127
- package/docs/module_selenium-webdriver_chrome_class_ServiceBuilder.html +0 -46
- package/docs/module_selenium-webdriver_class_ActionSequence.html +0 -115
- package/docs/module_selenium-webdriver_class_Builder.html +0 -138
- package/docs/module_selenium-webdriver_class_Capabilities.html +0 -60
- package/docs/module_selenium-webdriver_class_Command.html +0 -15
- package/docs/module_selenium-webdriver_class_EventEmitter.html +0 -35
- package/docs/module_selenium-webdriver_class_FileDetector.html +0 -21
- package/docs/module_selenium-webdriver_class_Serializable.html +0 -9
- package/docs/module_selenium-webdriver_class_Session.html +0 -13
- package/docs/module_selenium-webdriver_class_WebDriver.html +0 -313
- package/docs/module_selenium-webdriver_class_WebElement.html +0 -223
- package/docs/module_selenium-webdriver_class_WebElementPromise.html +0 -274
- package/docs/module_selenium-webdriver_enum_Browser.html +0 -2
- package/docs/module_selenium-webdriver_enum_Button.html +0 -2
- package/docs/module_selenium-webdriver_enum_Capability.html +0 -33
- package/docs/module_selenium-webdriver_enum_CommandName.html +0 -3
- package/docs/module_selenium-webdriver_enum_Key.html +0 -12
- package/docs/module_selenium-webdriver_error.html +0 -4
- package/docs/module_selenium-webdriver_error_class_Error.html +0 -15
- package/docs/module_selenium-webdriver_error_enum_ErrorCode.html +0 -3
- package/docs/module_selenium-webdriver_executors.html +0 -10
- package/docs/module_selenium-webdriver_executors_class_DeferredExecutor.html +0 -12
- package/docs/module_selenium-webdriver_firefox.html +0 -68
- package/docs/module_selenium-webdriver_firefox_binary.html +0 -5
- package/docs/module_selenium-webdriver_firefox_binary_class_Binary.html +0 -20
- package/docs/module_selenium-webdriver_firefox_class_Binary.html +0 -20
- package/docs/module_selenium-webdriver_firefox_class_Driver.html +0 -276
- package/docs/module_selenium-webdriver_firefox_class_Options.html +0 -19
- package/docs/module_selenium-webdriver_firefox_class_Profile.html +0 -50
- package/docs/module_selenium-webdriver_firefox_extension.html +0 -8
- package/docs/module_selenium-webdriver_firefox_profile.html +0 -13
- package/docs/module_selenium-webdriver_firefox_profile_class_Profile.html +0 -50
- package/docs/module_selenium-webdriver_http.html +0 -9
- package/docs/module_selenium-webdriver_http_class_Executor.html +0 -22
- package/docs/module_selenium-webdriver_http_class_HttpClient.html +0 -16
- package/docs/module_selenium-webdriver_http_class_Request.html +0 -12
- package/docs/module_selenium-webdriver_http_class_Response.html +0 -13
- package/docs/module_selenium-webdriver_http_util.html +0 -17
- package/docs/module_selenium-webdriver_ie.html +0 -11
- package/docs/module_selenium-webdriver_ie_class_Driver.html +0 -274
- package/docs/module_selenium-webdriver_ie_class_Options.html +0 -89
- package/docs/module_selenium-webdriver_ie_enum_Level.html +0 -1
- package/docs/module_selenium-webdriver_io.html +0 -37
- package/docs/module_selenium-webdriver_io_exec.html +0 -6
- package/docs/module_selenium-webdriver_namespace_By.html +0 -56
- package/docs/module_selenium-webdriver_namespace_error.html +0 -4
- package/docs/module_selenium-webdriver_namespace_logging.html +0 -18
- package/docs/module_selenium-webdriver_namespace_promise.html +0 -163
- package/docs/module_selenium-webdriver_namespace_stacktrace.html +0 -17
- package/docs/module_selenium-webdriver_namespace_until.html +0 -82
- package/docs/module_selenium-webdriver_net.html +0 -7
- package/docs/module_selenium-webdriver_net_portprober.html +0 -12
- package/docs/module_selenium-webdriver_opera.html +0 -62
- package/docs/module_selenium-webdriver_opera_class_Driver.html +0 -276
- package/docs/module_selenium-webdriver_opera_class_Options.html +0 -44
- package/docs/module_selenium-webdriver_opera_class_ServiceBuilder.html +0 -35
- package/docs/module_selenium-webdriver_phantomjs.html +0 -2
- package/docs/module_selenium-webdriver_phantomjs_class_Driver.html +0 -299
- package/docs/module_selenium-webdriver_proxy.html +0 -28
- package/docs/module_selenium-webdriver_remote.html +0 -8
- package/docs/module_selenium-webdriver_remote_class_DriverService.html +0 -32
- package/docs/module_selenium-webdriver_remote_class_FileDetector.html +0 -22
- package/docs/module_selenium-webdriver_remote_class_SeleniumServer.html +0 -41
- package/docs/module_selenium-webdriver_safari.html +0 -9
- package/docs/module_selenium-webdriver_safari_class_Driver.html +0 -279
- package/docs/module_selenium-webdriver_safari_class_Options.html +0 -23
- package/docs/module_selenium-webdriver_testing.html +0 -74
- package/docs/module_selenium-webdriver_testing_assert.html +0 -9
- package/docs/namespace_bot.html +0 -4
- package/docs/namespace_bot_json.html +0 -20
- package/docs/namespace_bot_response.html +0 -18
- package/docs/namespace_bot_userAgent.html +0 -33
- package/docs/namespace_webdriver.html +0 -30
- package/docs/namespace_webdriver_By.html +0 -56
- package/docs/namespace_webdriver_http.html +0 -6
- package/docs/namespace_webdriver_logging.html +0 -70
- package/docs/namespace_webdriver_promise.html +0 -688
- package/docs/namespace_webdriver_stacktrace.html +0 -17
- package/docs/namespace_webdriver_testing.html +0 -7
- package/docs/namespace_webdriver_testing_assert.html +0 -9
- package/docs/namespace_webdriver_testing_asserts.html +0 -18
- package/docs/namespace_webdriver_until.html +0 -82
- package/docs/source/_base.js.src.html +0 -1
- package/docs/source/builder.js.src.html +0 -1
- package/docs/source/chrome.js.src.html +0 -1
- package/docs/source/error.js.src.html +0 -1
- package/docs/source/executors.js.src.html +0 -1
- package/docs/source/firefox/binary.js.src.html +0 -1
- package/docs/source/firefox/extension.js.src.html +0 -1
- package/docs/source/firefox/index.js.src.html +0 -1
- package/docs/source/firefox/profile.js.src.html +0 -1
- package/docs/source/http/index.js.src.html +0 -1
- package/docs/source/http/util.js.src.html +0 -1
- package/docs/source/ie.js.src.html +0 -1
- package/docs/source/index.js.src.html +0 -1
- package/docs/source/io/exec.js.src.html +0 -1
- package/docs/source/io/index.js.src.html +0 -1
- package/docs/source/lib/atoms/error.js.src.html +0 -1
- package/docs/source/lib/atoms/json.js.src.html +0 -1
- package/docs/source/lib/atoms/response.js.src.html +0 -1
- package/docs/source/lib/atoms/userAgent.js.src.html +0 -1
- package/docs/source/lib/goog/array/array.js.src.html +0 -1
- package/docs/source/lib/goog/asserts/asserts.js.src.html +0 -1
- package/docs/source/lib/goog/async/freelist.js.src.html +0 -1
- package/docs/source/lib/goog/async/nexttick.js.src.html +0 -1
- package/docs/source/lib/goog/async/run.js.src.html +0 -1
- package/docs/source/lib/goog/async/workqueue.js.src.html +0 -1
- package/docs/source/lib/goog/base.js.src.html +0 -1
- package/docs/source/lib/goog/debug/debug.js.src.html +0 -1
- package/docs/source/lib/goog/debug/entrypointregistry.js.src.html +0 -1
- package/docs/source/lib/goog/debug/error.js.src.html +0 -1
- package/docs/source/lib/goog/debug/logbuffer.js.src.html +0 -1
- package/docs/source/lib/goog/debug/logger.js.src.html +0 -1
- package/docs/source/lib/goog/debug/logrecord.js.src.html +0 -1
- package/docs/source/lib/goog/deps.js.src.html +0 -1
- package/docs/source/lib/goog/disposable/disposable.js.src.html +0 -1
- package/docs/source/lib/goog/disposable/idisposable.js.src.html +0 -1
- package/docs/source/lib/goog/dom/browserfeature.js.src.html +0 -1
- package/docs/source/lib/goog/dom/dom.js.src.html +0 -1
- package/docs/source/lib/goog/dom/nodetype.js.src.html +0 -1
- package/docs/source/lib/goog/dom/safe.js.src.html +0 -1
- package/docs/source/lib/goog/dom/tagname.js.src.html +0 -1
- package/docs/source/lib/goog/dom/tags.js.src.html +0 -1
- package/docs/source/lib/goog/dom/vendor.js.src.html +0 -1
- package/docs/source/lib/goog/events/browserevent.js.src.html +0 -1
- package/docs/source/lib/goog/events/browserfeature.js.src.html +0 -1
- package/docs/source/lib/goog/events/event.js.src.html +0 -1
- package/docs/source/lib/goog/events/eventid.js.src.html +0 -1
- package/docs/source/lib/goog/events/events.js.src.html +0 -1
- package/docs/source/lib/goog/events/eventtarget.js.src.html +0 -1
- package/docs/source/lib/goog/events/eventtype.js.src.html +0 -1
- package/docs/source/lib/goog/events/keycodes.js.src.html +0 -1
- package/docs/source/lib/goog/events/listenable.js.src.html +0 -1
- package/docs/source/lib/goog/events/listener.js.src.html +0 -1
- package/docs/source/lib/goog/events/listenermap.js.src.html +0 -1
- package/docs/source/lib/goog/fs/url.js.src.html +0 -1
- package/docs/source/lib/goog/functions/functions.js.src.html +0 -1
- package/docs/source/lib/goog/html/safehtml.js.src.html +0 -1
- package/docs/source/lib/goog/html/safescript.js.src.html +0 -1
- package/docs/source/lib/goog/html/safestyle.js.src.html +0 -1
- package/docs/source/lib/goog/html/safestylesheet.js.src.html +0 -1
- package/docs/source/lib/goog/html/safeurl.js.src.html +0 -1
- package/docs/source/lib/goog/html/trustedresourceurl.js.src.html +0 -1
- package/docs/source/lib/goog/html/uncheckedconversions.js.src.html +0 -1
- package/docs/source/lib/goog/i18n/bidi.js.src.html +0 -1
- package/docs/source/lib/goog/iter/iter.js.src.html +0 -1
- package/docs/source/lib/goog/json/json.js.src.html +0 -1
- package/docs/source/lib/goog/labs/testing/assertthat.js.src.html +0 -1
- package/docs/source/lib/goog/labs/testing/logicmatcher.js.src.html +0 -1
- package/docs/source/lib/goog/labs/testing/matcher.js.src.html +0 -1
- package/docs/source/lib/goog/labs/testing/numbermatcher.js.src.html +0 -1
- package/docs/source/lib/goog/labs/testing/objectmatcher.js.src.html +0 -1
- package/docs/source/lib/goog/labs/testing/stringmatcher.js.src.html +0 -1
- package/docs/source/lib/goog/labs/useragent/browser.js.src.html +0 -1
- package/docs/source/lib/goog/labs/useragent/engine.js.src.html +0 -1
- package/docs/source/lib/goog/labs/useragent/platform.js.src.html +0 -1
- package/docs/source/lib/goog/labs/useragent/util.js.src.html +0 -1
- package/docs/source/lib/goog/log/log.js.src.html +0 -1
- package/docs/source/lib/goog/math/box.js.src.html +0 -1
- package/docs/source/lib/goog/math/coordinate.js.src.html +0 -1
- package/docs/source/lib/goog/math/math.js.src.html +0 -1
- package/docs/source/lib/goog/math/rect.js.src.html +0 -1
- package/docs/source/lib/goog/math/size.js.src.html +0 -1
- package/docs/source/lib/goog/net/wrapperxmlhttpfactory.js.src.html +0 -1
- package/docs/source/lib/goog/net/xhrlike.js.src.html +0 -1
- package/docs/source/lib/goog/net/xmlhttp.js.src.html +0 -1
- package/docs/source/lib/goog/net/xmlhttpfactory.js.src.html +0 -1
- package/docs/source/lib/goog/object/object.js.src.html +0 -1
- package/docs/source/lib/goog/promise/promise.js.src.html +0 -1
- package/docs/source/lib/goog/promise/resolver.js.src.html +0 -1
- package/docs/source/lib/goog/promise/thenable.js.src.html +0 -1
- package/docs/source/lib/goog/reflect/reflect.js.src.html +0 -1
- package/docs/source/lib/goog/string/const.js.src.html +0 -1
- package/docs/source/lib/goog/string/string.js.src.html +0 -1
- package/docs/source/lib/goog/string/typedstring.js.src.html +0 -1
- package/docs/source/lib/goog/structs/collection.js.src.html +0 -1
- package/docs/source/lib/goog/structs/map.js.src.html +0 -1
- package/docs/source/lib/goog/structs/set.js.src.html +0 -1
- package/docs/source/lib/goog/structs/structs.js.src.html +0 -1
- package/docs/source/lib/goog/style/style.js.src.html +0 -1
- package/docs/source/lib/goog/testing/asserts.js.src.html +0 -1
- package/docs/source/lib/goog/testing/events/events.js.src.html +0 -1
- package/docs/source/lib/goog/testing/functionmock.js.src.html +0 -1
- package/docs/source/lib/goog/testing/jsunit.js.src.html +0 -1
- package/docs/source/lib/goog/testing/loosemock.js.src.html +0 -1
- package/docs/source/lib/goog/testing/mock.js.src.html +0 -1
- package/docs/source/lib/goog/testing/mockclock.js.src.html +0 -1
- package/docs/source/lib/goog/testing/mockcontrol.js.src.html +0 -1
- package/docs/source/lib/goog/testing/mockinterface.js.src.html +0 -1
- package/docs/source/lib/goog/testing/mockmatchers.js.src.html +0 -1
- package/docs/source/lib/goog/testing/objectpropertystring.js.src.html +0 -1
- package/docs/source/lib/goog/testing/propertyreplacer.js.src.html +0 -1
- package/docs/source/lib/goog/testing/recordfunction.js.src.html +0 -1
- package/docs/source/lib/goog/testing/stacktrace.js.src.html +0 -1
- package/docs/source/lib/goog/testing/strictmock.js.src.html +0 -1
- package/docs/source/lib/goog/testing/testcase.js.src.html +0 -1
- package/docs/source/lib/goog/testing/testrunner.js.src.html +0 -1
- package/docs/source/lib/goog/uri/uri.js.src.html +0 -1
- package/docs/source/lib/goog/uri/utils.js.src.html +0 -1
- package/docs/source/lib/goog/useragent/product.js.src.html +0 -1
- package/docs/source/lib/goog/useragent/product_isversion.js.src.html +0 -1
- package/docs/source/lib/goog/useragent/useragent.js.src.html +0 -1
- package/docs/source/lib/webdriver/actionsequence.js.src.html +0 -1
- package/docs/source/lib/webdriver/button.js.src.html +0 -1
- package/docs/source/lib/webdriver/capabilities.js.src.html +0 -1
- package/docs/source/lib/webdriver/command.js.src.html +0 -1
- package/docs/source/lib/webdriver/events.js.src.html +0 -1
- package/docs/source/lib/webdriver/http/http.js.src.html +0 -1
- package/docs/source/lib/webdriver/key.js.src.html +0 -1
- package/docs/source/lib/webdriver/locators.js.src.html +0 -1
- package/docs/source/lib/webdriver/logging.js.src.html +0 -1
- package/docs/source/lib/webdriver/promise.js.src.html +0 -1
- package/docs/source/lib/webdriver/serializable.js.src.html +0 -1
- package/docs/source/lib/webdriver/session.js.src.html +0 -1
- package/docs/source/lib/webdriver/stacktrace.js.src.html +0 -1
- package/docs/source/lib/webdriver/testing/asserts.js.src.html +0 -1
- package/docs/source/lib/webdriver/touchsequence.js.src.html +0 -1
- package/docs/source/lib/webdriver/until.js.src.html +0 -1
- package/docs/source/lib/webdriver/webdriver.js.src.html +0 -1
- package/docs/source/net/index.js.src.html +0 -1
- package/docs/source/net/portprober.js.src.html +0 -1
- package/docs/source/opera.js.src.html +0 -1
- package/docs/source/phantomjs.js.src.html +0 -1
- package/docs/source/proxy.js.src.html +0 -1
- package/docs/source/remote/index.js.src.html +0 -1
- package/docs/source/safari.js.src.html +0 -1
- package/docs/source/testing/assert.js.src.html +0 -1
- package/docs/source/testing/index.js.src.html +0 -1
- package/docs/types.js +0 -1
- package/lib/atoms/error.js +0 -202
- package/lib/atoms/json.js +0 -80
- package/lib/atoms/response.js +0 -110
- package/lib/atoms/userAgent.js +0 -257
- package/lib/goog/LICENSE +0 -176
- package/lib/goog/array/array.js +0 -1654
- package/lib/goog/asserts/asserts.js +0 -365
- package/lib/goog/async/freelist.js +0 -88
- package/lib/goog/async/nexttick.js +0 -241
- package/lib/goog/async/run.js +0 -133
- package/lib/goog/async/workqueue.js +0 -139
- package/lib/goog/base.js +0 -2548
- package/lib/goog/debug/debug.js +0 -653
- package/lib/goog/debug/entrypointregistry.js +0 -158
- package/lib/goog/debug/error.js +0 -63
- package/lib/goog/debug/logbuffer.js +0 -148
- package/lib/goog/debug/logger.js +0 -873
- package/lib/goog/debug/logrecord.js +0 -242
- package/lib/goog/deps.js +0 -151
- package/lib/goog/disposable/disposable.js +0 -307
- package/lib/goog/disposable/idisposable.js +0 -45
- package/lib/goog/dom/browserfeature.js +0 -72
- package/lib/goog/dom/dom.js +0 -2991
- package/lib/goog/dom/nodetype.js +0 -48
- package/lib/goog/dom/safe.js +0 -347
- package/lib/goog/dom/tagname.js +0 -160
- package/lib/goog/dom/tags.js +0 -41
- package/lib/goog/dom/vendor.js +0 -96
- package/lib/goog/events/browserevent.js +0 -400
- package/lib/goog/events/browserfeature.js +0 -85
- package/lib/goog/events/event.js +0 -143
- package/lib/goog/events/eventid.js +0 -47
- package/lib/goog/events/events.js +0 -984
- package/lib/goog/events/eventtarget.js +0 -394
- package/lib/goog/events/eventtype.js +0 -237
- package/lib/goog/events/keycodes.js +0 -427
- package/lib/goog/events/listenable.js +0 -335
- package/lib/goog/events/listener.js +0 -131
- package/lib/goog/events/listenermap.js +0 -308
- package/lib/goog/fs/url.js +0 -109
- package/lib/goog/functions/functions.js +0 -442
- package/lib/goog/html/safehtml.js +0 -757
- package/lib/goog/html/safescript.js +0 -234
- package/lib/goog/html/safestyle.js +0 -442
- package/lib/goog/html/safestylesheet.js +0 -276
- package/lib/goog/html/safeurl.js +0 -398
- package/lib/goog/html/trustedresourceurl.js +0 -224
- package/lib/goog/html/uncheckedconversions.js +0 -232
- package/lib/goog/i18n/bidi.js +0 -908
- package/lib/goog/iter/iter.js +0 -1302
- package/lib/goog/json/json.js +0 -363
- package/lib/goog/labs/testing/assertthat.js +0 -58
- package/lib/goog/labs/testing/logicmatcher.js +0 -212
- package/lib/goog/labs/testing/matcher.js +0 -80
- package/lib/goog/labs/testing/numbermatcher.js +0 -346
- package/lib/goog/labs/testing/objectmatcher.js +0 -317
- package/lib/goog/labs/testing/stringmatcher.js +0 -415
- package/lib/goog/labs/useragent/browser.js +0 -341
- package/lib/goog/labs/useragent/engine.js +0 -160
- package/lib/goog/labs/useragent/platform.js +0 -160
- package/lib/goog/labs/useragent/util.js +0 -148
- package/lib/goog/log/log.js +0 -197
- package/lib/goog/math/box.js +0 -398
- package/lib/goog/math/coordinate.js +0 -268
- package/lib/goog/math/math.js +0 -451
- package/lib/goog/math/rect.js +0 -476
- package/lib/goog/math/size.js +0 -227
- package/lib/goog/net/wrapperxmlhttpfactory.js +0 -71
- package/lib/goog/net/xhrlike.js +0 -124
- package/lib/goog/net/xmlhttp.js +0 -246
- package/lib/goog/net/xmlhttpfactory.js +0 -67
- package/lib/goog/object/object.js +0 -686
- package/lib/goog/promise/promise.js +0 -1350
- package/lib/goog/promise/resolver.js +0 -48
- package/lib/goog/promise/thenable.js +0 -126
- package/lib/goog/reflect/reflect.js +0 -77
- package/lib/goog/string/const.js +0 -182
- package/lib/goog/string/string.js +0 -1599
- package/lib/goog/string/typedstring.js +0 -48
- package/lib/goog/structs/collection.js +0 -56
- package/lib/goog/structs/map.js +0 -457
- package/lib/goog/structs/set.js +0 -279
- package/lib/goog/structs/structs.js +0 -354
- package/lib/goog/style/style.js +0 -2037
- package/lib/goog/testing/asserts.js +0 -1278
- package/lib/goog/testing/events/events.js +0 -767
- package/lib/goog/testing/functionmock.js +0 -175
- package/lib/goog/testing/jsunit.js +0 -162
- package/lib/goog/testing/loosemock.js +0 -242
- package/lib/goog/testing/mock.js +0 -645
- package/lib/goog/testing/mockclock.js +0 -606
- package/lib/goog/testing/mockcontrol.js +0 -220
- package/lib/goog/testing/mockinterface.js +0 -45
- package/lib/goog/testing/mockmatchers.js +0 -400
- package/lib/goog/testing/objectpropertystring.js +0 -68
- package/lib/goog/testing/propertyreplacer.js +0 -262
- package/lib/goog/testing/recordfunction.js +0 -215
- package/lib/goog/testing/stacktrace.js +0 -594
- package/lib/goog/testing/strictmock.js +0 -130
- package/lib/goog/testing/testcase.js +0 -1629
- package/lib/goog/testing/testrunner.js +0 -440
- package/lib/goog/uri/uri.js +0 -1524
- package/lib/goog/uri/utils.js +0 -1064
- package/lib/goog/useragent/product.js +0 -183
- package/lib/goog/useragent/product_isversion.js +0 -144
- package/lib/goog/useragent/useragent.js +0 -572
- package/lib/webdriver/actionsequence.js +0 -356
- package/lib/webdriver/builder.js +0 -207
- package/lib/webdriver/capabilities.js +0 -412
- package/lib/webdriver/events.js +0 -179
- package/lib/webdriver/firefoxdomexecutor.js +0 -175
- package/lib/webdriver/http/corsclient.js +0 -133
- package/lib/webdriver/http/http.js +0 -525
- package/lib/webdriver/http/xhrclient.js +0 -67
- package/lib/webdriver/locators.js +0 -257
- package/lib/webdriver/logging.js +0 -347
- package/lib/webdriver/session.js +0 -74
- package/lib/webdriver/stacktrace.js +0 -619
- package/lib/webdriver/test/builder_test.js +0 -53
- package/lib/webdriver/test/capabilities_test.js +0 -72
- package/lib/webdriver/test/events_test.js +0 -203
- package/lib/webdriver/test/http/corsclient_test.js +0 -151
- package/lib/webdriver/test/http/http_test.js +0 -428
- package/lib/webdriver/test/http/xhrclient_test.js +0 -196
- package/lib/webdriver/test/locators_test.js +0 -59
- package/lib/webdriver/test/logging_test.js +0 -85
- package/lib/webdriver/test/promise_error_test.js +0 -892
- package/lib/webdriver/test/promise_flow_test.js +0 -2365
- package/lib/webdriver/test/promise_generator_test.js +0 -323
- package/lib/webdriver/test/promise_test.js +0 -2012
- package/lib/webdriver/test/stacktrace_test.js +0 -480
- package/lib/webdriver/test/test_bootstrap.js +0 -67
- package/lib/webdriver/test/testing/asserts_test.js +0 -117
- package/lib/webdriver/test/testing/client_test.js +0 -88
- package/lib/webdriver/test/testing/testcase_test.js +0 -229
- package/lib/webdriver/test/testutil.js +0 -209
- package/lib/webdriver/test/testutil_test.js +0 -104
- package/lib/webdriver/test/until_test.js +0 -411
- package/lib/webdriver/test/webdriver_generator_test.js +0 -92
- package/lib/webdriver/test/webdriver_test.js +0 -2369
- package/lib/webdriver/testing/asserts.js +0 -487
- package/lib/webdriver/testing/client.js +0 -179
- package/lib/webdriver/testing/jsunit.js +0 -363
- package/lib/webdriver/testing/testcase.js +0 -168
- package/lib/webdriver/testing/window.js +0 -244
- package/lib/webdriver/touchsequence.js +0 -248
- package/lib/webdriver/until.js +0 -412
- package/lib/webdriver/webdriver.js +0 -2511
- package/test/_base_test.js +0 -129
|
@@ -1,412 +0,0 @@
|
|
|
1
|
-
// Licensed to the Software Freedom Conservancy (SFC) under one
|
|
2
|
-
// or more contributor license agreements. See the NOTICE file
|
|
3
|
-
// distributed with this work for additional information
|
|
4
|
-
// regarding copyright ownership. The SFC licenses this file
|
|
5
|
-
// to you under the Apache License, Version 2.0 (the
|
|
6
|
-
// "License"); you may not use this file except in compliance
|
|
7
|
-
// with the License. You may obtain a copy of the License at
|
|
8
|
-
//
|
|
9
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
//
|
|
11
|
-
// Unless required by applicable law or agreed to in writing,
|
|
12
|
-
// software distributed under the License is distributed on an
|
|
13
|
-
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
// KIND, either express or implied. See the License for the
|
|
15
|
-
// specific language governing permissions and limitations
|
|
16
|
-
// under the License.
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @fileoverview Defines the webdriver.Capabilities class.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
goog.provide('webdriver.Browser');
|
|
23
|
-
goog.provide('webdriver.Capabilities');
|
|
24
|
-
goog.provide('webdriver.Capability');
|
|
25
|
-
goog.provide('webdriver.ProxyConfig');
|
|
26
|
-
|
|
27
|
-
goog.require('webdriver.Serializable');
|
|
28
|
-
goog.require('webdriver.logging');
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Recognized browser names.
|
|
34
|
-
* @enum {string}
|
|
35
|
-
*/
|
|
36
|
-
webdriver.Browser = {
|
|
37
|
-
ANDROID: 'android',
|
|
38
|
-
CHROME: 'chrome',
|
|
39
|
-
FIREFOX: 'firefox',
|
|
40
|
-
IE: 'internet explorer',
|
|
41
|
-
INTERNET_EXPLORER: 'internet explorer',
|
|
42
|
-
IPAD: 'iPad',
|
|
43
|
-
IPHONE: 'iPhone',
|
|
44
|
-
OPERA: 'opera',
|
|
45
|
-
PHANTOM_JS: 'phantomjs',
|
|
46
|
-
SAFARI: 'safari',
|
|
47
|
-
HTMLUNIT: 'htmlunit'
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Describes how a proxy should be configured for a WebDriver session.
|
|
54
|
-
* Proxy configuration object, as defined by the WebDriver wire protocol.
|
|
55
|
-
* @typedef {(
|
|
56
|
-
* {proxyType: string}|
|
|
57
|
-
* {proxyType: string,
|
|
58
|
-
* proxyAutoconfigUrl: string}|
|
|
59
|
-
* {proxyType: string,
|
|
60
|
-
* ftpProxy: string,
|
|
61
|
-
* httpProxy: string,
|
|
62
|
-
* sslProxy: string,
|
|
63
|
-
* noProxy: string})}
|
|
64
|
-
*/
|
|
65
|
-
webdriver.ProxyConfig;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* Common webdriver capability keys.
|
|
71
|
-
* @enum {string}
|
|
72
|
-
*/
|
|
73
|
-
webdriver.Capability = {
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Indicates whether a driver should accept all SSL certs by default. This
|
|
77
|
-
* capability only applies when requesting a new session. To query whether
|
|
78
|
-
* a driver can handle insecure SSL certs, see {@link #SECURE_SSL}.
|
|
79
|
-
*/
|
|
80
|
-
ACCEPT_SSL_CERTS: 'acceptSslCerts',
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* The browser name. Common browser names are defined in the
|
|
85
|
-
* {@link webdriver.Browser} enum.
|
|
86
|
-
*/
|
|
87
|
-
BROWSER_NAME: 'browserName',
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* Defines how elements should be scrolled into the viewport for interaction.
|
|
91
|
-
* This capability will be set to zero (0) if elements are aligned with the
|
|
92
|
-
* top of the viewport, or one (1) if aligned with the bottom. The default
|
|
93
|
-
* behavior is to align with the top of the viewport.
|
|
94
|
-
*/
|
|
95
|
-
ELEMENT_SCROLL_BEHAVIOR: 'elementScrollBehavior',
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Whether the driver is capable of handling modal alerts (e.g. alert,
|
|
99
|
-
* confirm, prompt). To define how a driver <i>should</i> handle alerts,
|
|
100
|
-
* use {@link #UNEXPECTED_ALERT_BEHAVIOR}.
|
|
101
|
-
*/
|
|
102
|
-
HANDLES_ALERTS: 'handlesAlerts',
|
|
103
|
-
|
|
104
|
-
/**
|
|
105
|
-
* Key for the logging driver logging preferences.
|
|
106
|
-
*/
|
|
107
|
-
LOGGING_PREFS: 'loggingPrefs',
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* Whether this session generates native events when simulating user input.
|
|
111
|
-
*/
|
|
112
|
-
NATIVE_EVENTS: 'nativeEvents',
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Describes the platform the browser is running on. Will be one of
|
|
116
|
-
* ANDROID, IOS, LINUX, MAC, UNIX, or WINDOWS. When <i>requesting</i> a
|
|
117
|
-
* session, ANY may be used to indicate no platform preference (this is
|
|
118
|
-
* semantically equivalent to omitting the platform capability).
|
|
119
|
-
*/
|
|
120
|
-
PLATFORM: 'platform',
|
|
121
|
-
|
|
122
|
-
/**
|
|
123
|
-
* Describes the proxy configuration to use for a new WebDriver session.
|
|
124
|
-
*/
|
|
125
|
-
PROXY: 'proxy',
|
|
126
|
-
|
|
127
|
-
/** Whether the driver supports changing the brower's orientation. */
|
|
128
|
-
ROTATABLE: 'rotatable',
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* Whether a driver is only capable of handling secure SSL certs. To request
|
|
132
|
-
* that a driver accept insecure SSL certs by default, use
|
|
133
|
-
* {@link #ACCEPT_SSL_CERTS}.
|
|
134
|
-
*/
|
|
135
|
-
SECURE_SSL: 'secureSsl',
|
|
136
|
-
|
|
137
|
-
/** Whether the driver supports manipulating the app cache. */
|
|
138
|
-
SUPPORTS_APPLICATION_CACHE: 'applicationCacheEnabled',
|
|
139
|
-
|
|
140
|
-
/** Whether the driver supports locating elements with CSS selectors. */
|
|
141
|
-
SUPPORTS_CSS_SELECTORS: 'cssSelectorsEnabled',
|
|
142
|
-
|
|
143
|
-
/** Whether the browser supports JavaScript. */
|
|
144
|
-
SUPPORTS_JAVASCRIPT: 'javascriptEnabled',
|
|
145
|
-
|
|
146
|
-
/** Whether the driver supports controlling the browser's location info. */
|
|
147
|
-
SUPPORTS_LOCATION_CONTEXT: 'locationContextEnabled',
|
|
148
|
-
|
|
149
|
-
/** Whether the driver supports taking screenshots. */
|
|
150
|
-
TAKES_SCREENSHOT: 'takesScreenshot',
|
|
151
|
-
|
|
152
|
-
/**
|
|
153
|
-
* Defines how the driver should handle unexpected alerts. The value should
|
|
154
|
-
* be one of "accept", "dismiss", or "ignore.
|
|
155
|
-
*/
|
|
156
|
-
UNEXPECTED_ALERT_BEHAVIOR: 'unexpectedAlertBehavior',
|
|
157
|
-
|
|
158
|
-
/** Defines the browser version. */
|
|
159
|
-
VERSION: 'version'
|
|
160
|
-
};
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* @param {(webdriver.Capabilities|Object)=} opt_other Another set of
|
|
166
|
-
* capabilities to merge into this instance.
|
|
167
|
-
* @constructor
|
|
168
|
-
* @extends {webdriver.Serializable.<!Object.<string, ?>>}
|
|
169
|
-
*/
|
|
170
|
-
webdriver.Capabilities = function(opt_other) {
|
|
171
|
-
webdriver.Serializable.call(this);
|
|
172
|
-
|
|
173
|
-
/** @private {!Object.<string, ?>} */
|
|
174
|
-
this.caps_ = {};
|
|
175
|
-
|
|
176
|
-
if (opt_other) {
|
|
177
|
-
this.merge(opt_other);
|
|
178
|
-
}
|
|
179
|
-
};
|
|
180
|
-
goog.inherits(webdriver.Capabilities, webdriver.Serializable);
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
/**
|
|
184
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for Android.
|
|
185
|
-
*/
|
|
186
|
-
webdriver.Capabilities.android = function() {
|
|
187
|
-
return new webdriver.Capabilities().
|
|
188
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.ANDROID).
|
|
189
|
-
set(webdriver.Capability.PLATFORM, 'ANDROID');
|
|
190
|
-
};
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
/**
|
|
194
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for Chrome.
|
|
195
|
-
*/
|
|
196
|
-
webdriver.Capabilities.chrome = function() {
|
|
197
|
-
return new webdriver.Capabilities().
|
|
198
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.CHROME);
|
|
199
|
-
};
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
/**
|
|
203
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for Firefox.
|
|
204
|
-
*/
|
|
205
|
-
webdriver.Capabilities.firefox = function() {
|
|
206
|
-
return new webdriver.Capabilities().
|
|
207
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.FIREFOX);
|
|
208
|
-
};
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
/**
|
|
212
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for
|
|
213
|
-
* Internet Explorer.
|
|
214
|
-
*/
|
|
215
|
-
webdriver.Capabilities.ie = function() {
|
|
216
|
-
return new webdriver.Capabilities().
|
|
217
|
-
set(webdriver.Capability.BROWSER_NAME,
|
|
218
|
-
webdriver.Browser.INTERNET_EXPLORER).
|
|
219
|
-
set(webdriver.Capability.PLATFORM, 'WINDOWS');
|
|
220
|
-
};
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for iPad.
|
|
225
|
-
*/
|
|
226
|
-
webdriver.Capabilities.ipad = function() {
|
|
227
|
-
return new webdriver.Capabilities().
|
|
228
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.IPAD).
|
|
229
|
-
set(webdriver.Capability.PLATFORM, 'MAC');
|
|
230
|
-
};
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
/**
|
|
234
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for iPhone.
|
|
235
|
-
*/
|
|
236
|
-
webdriver.Capabilities.iphone = function() {
|
|
237
|
-
return new webdriver.Capabilities().
|
|
238
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.IPHONE).
|
|
239
|
-
set(webdriver.Capability.PLATFORM, 'MAC');
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
/**
|
|
244
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for Opera.
|
|
245
|
-
*/
|
|
246
|
-
webdriver.Capabilities.opera = function() {
|
|
247
|
-
return new webdriver.Capabilities().
|
|
248
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.OPERA);
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
/**
|
|
252
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for
|
|
253
|
-
* PhantomJS.
|
|
254
|
-
*/
|
|
255
|
-
webdriver.Capabilities.phantomjs = function() {
|
|
256
|
-
return new webdriver.Capabilities().
|
|
257
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.PHANTOM_JS);
|
|
258
|
-
};
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
/**
|
|
262
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for Safari.
|
|
263
|
-
*/
|
|
264
|
-
webdriver.Capabilities.safari = function() {
|
|
265
|
-
return new webdriver.Capabilities().
|
|
266
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.SAFARI).
|
|
267
|
-
set(webdriver.Capability.PLATFORM, 'MAC');
|
|
268
|
-
};
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
/**
|
|
272
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for HTMLUnit.
|
|
273
|
-
*/
|
|
274
|
-
webdriver.Capabilities.htmlunit = function() {
|
|
275
|
-
return new webdriver.Capabilities().
|
|
276
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.HTMLUNIT);
|
|
277
|
-
};
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
/**
|
|
281
|
-
* @return {!webdriver.Capabilities} A basic set of capabilities for HTMLUnit
|
|
282
|
-
* with enabled Javascript.
|
|
283
|
-
*/
|
|
284
|
-
webdriver.Capabilities.htmlunitwithjs = function() {
|
|
285
|
-
return new webdriver.Capabilities().
|
|
286
|
-
set(webdriver.Capability.BROWSER_NAME, webdriver.Browser.HTMLUNIT).
|
|
287
|
-
set(webdriver.Capability.SUPPORTS_JAVASCRIPT, true);
|
|
288
|
-
};
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
/**
|
|
292
|
-
* @return {!Object.<string, ?>} The JSON representation of this instance. Note,
|
|
293
|
-
* the returned object may contain nested promises that are promised values.
|
|
294
|
-
* @override
|
|
295
|
-
*/
|
|
296
|
-
webdriver.Capabilities.prototype.serialize = function() {
|
|
297
|
-
return this.caps_;
|
|
298
|
-
};
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
/**
|
|
302
|
-
* Merges another set of capabilities into this instance. Any duplicates in
|
|
303
|
-
* the provided set will override those already set on this instance.
|
|
304
|
-
* @param {!(webdriver.Capabilities|Object)} other The capabilities to
|
|
305
|
-
* merge into this instance.
|
|
306
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
307
|
-
*/
|
|
308
|
-
webdriver.Capabilities.prototype.merge = function(other) {
|
|
309
|
-
var caps = other instanceof webdriver.Capabilities ?
|
|
310
|
-
other.caps_ : other;
|
|
311
|
-
for (var key in caps) {
|
|
312
|
-
if (caps.hasOwnProperty(key)) {
|
|
313
|
-
this.set(key, caps[key]);
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
return this;
|
|
317
|
-
};
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
/**
|
|
321
|
-
* @param {string} key The capability to set.
|
|
322
|
-
* @param {*} value The capability value. Capability values must be JSON
|
|
323
|
-
* serializable. Pass {@code null} to unset the capability.
|
|
324
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
325
|
-
*/
|
|
326
|
-
webdriver.Capabilities.prototype.set = function(key, value) {
|
|
327
|
-
if (goog.isDefAndNotNull(value)) {
|
|
328
|
-
this.caps_[key] = value;
|
|
329
|
-
} else {
|
|
330
|
-
delete this.caps_[key];
|
|
331
|
-
}
|
|
332
|
-
return this;
|
|
333
|
-
};
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
/**
|
|
337
|
-
* @param {string} key The capability to return.
|
|
338
|
-
* @return {*} The capability with the given key, or {@code null} if it has
|
|
339
|
-
* not been set.
|
|
340
|
-
*/
|
|
341
|
-
webdriver.Capabilities.prototype.get = function(key) {
|
|
342
|
-
var val = null;
|
|
343
|
-
if (this.caps_.hasOwnProperty(key)) {
|
|
344
|
-
val = this.caps_[key];
|
|
345
|
-
}
|
|
346
|
-
return goog.isDefAndNotNull(val) ? val : null;
|
|
347
|
-
};
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
/**
|
|
351
|
-
* @param {string} key The capability to check.
|
|
352
|
-
* @return {boolean} Whether the specified capability is set.
|
|
353
|
-
*/
|
|
354
|
-
webdriver.Capabilities.prototype.has = function(key) {
|
|
355
|
-
return !!this.get(key);
|
|
356
|
-
};
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
/**
|
|
360
|
-
* Sets the logging preferences. Preferences may be specified as a
|
|
361
|
-
* {@link webdriver.logging.Preferences} instance, or a as a map of log-type to
|
|
362
|
-
* log-level.
|
|
363
|
-
* @param {!(webdriver.logging.Preferences|Object.<string, string>)} prefs The
|
|
364
|
-
* logging preferences.
|
|
365
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
366
|
-
*/
|
|
367
|
-
webdriver.Capabilities.prototype.setLoggingPrefs = function(prefs) {
|
|
368
|
-
return this.set(webdriver.Capability.LOGGING_PREFS, prefs);
|
|
369
|
-
};
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
/**
|
|
373
|
-
* Sets the proxy configuration for this instance.
|
|
374
|
-
* @param {webdriver.ProxyConfig} proxy The desired proxy configuration.
|
|
375
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
376
|
-
*/
|
|
377
|
-
webdriver.Capabilities.prototype.setProxy = function(proxy) {
|
|
378
|
-
return this.set(webdriver.Capability.PROXY, proxy);
|
|
379
|
-
};
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
/**
|
|
383
|
-
* Sets whether native events should be used.
|
|
384
|
-
* @param {boolean} enabled Whether to enable native events.
|
|
385
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
386
|
-
*/
|
|
387
|
-
webdriver.Capabilities.prototype.setEnableNativeEvents = function(enabled) {
|
|
388
|
-
return this.set(webdriver.Capability.NATIVE_EVENTS, enabled);
|
|
389
|
-
};
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
/**
|
|
393
|
-
* Sets how elements should be scrolled into view for interaction.
|
|
394
|
-
* @param {number} behavior The desired scroll behavior: either 0 to align with
|
|
395
|
-
* the top of the viewport or 1 to align with the bottom.
|
|
396
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
397
|
-
*/
|
|
398
|
-
webdriver.Capabilities.prototype.setScrollBehavior = function(behavior) {
|
|
399
|
-
return this.set(webdriver.Capability.ELEMENT_SCROLL_BEHAVIOR, behavior);
|
|
400
|
-
};
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
/**
|
|
404
|
-
* Sets the default action to take with an unexpected alert before returning
|
|
405
|
-
* an error.
|
|
406
|
-
* @param {string} behavior The desired behavior; should be "accept", "dismiss",
|
|
407
|
-
* or "ignore". Defaults to "dismiss".
|
|
408
|
-
* @return {!webdriver.Capabilities} A self reference.
|
|
409
|
-
*/
|
|
410
|
-
webdriver.Capabilities.prototype.setAlertBehavior = function(behavior) {
|
|
411
|
-
return this.set(webdriver.Capability.UNEXPECTED_ALERT_BEHAVIOR, behavior);
|
|
412
|
-
};
|
package/lib/webdriver/events.js
DELETED
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
// Licensed to the Software Freedom Conservancy (SFC) under one
|
|
2
|
-
// or more contributor license agreements. See the NOTICE file
|
|
3
|
-
// distributed with this work for additional information
|
|
4
|
-
// regarding copyright ownership. The SFC licenses this file
|
|
5
|
-
// to you under the Apache License, Version 2.0 (the
|
|
6
|
-
// "License"); you may not use this file except in compliance
|
|
7
|
-
// with the License. You may obtain a copy of the License at
|
|
8
|
-
//
|
|
9
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
//
|
|
11
|
-
// Unless required by applicable law or agreed to in writing,
|
|
12
|
-
// software distributed under the License is distributed on an
|
|
13
|
-
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
// KIND, either express or implied. See the License for the
|
|
15
|
-
// specific language governing permissions and limitations
|
|
16
|
-
// under the License.
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @fileoverview A light weight event system modeled after Node's EventEmitter.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
goog.provide('webdriver.EventEmitter');
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Object that can emit events for others to listen for. This is used instead
|
|
28
|
-
* of Closure's event system because it is much more light weight. The API is
|
|
29
|
-
* based on Node's EventEmitters.
|
|
30
|
-
* @constructor
|
|
31
|
-
*/
|
|
32
|
-
webdriver.EventEmitter = function() {
|
|
33
|
-
/**
|
|
34
|
-
* Map of events to registered listeners.
|
|
35
|
-
* @private {!Object.<!Array.<{fn: !Function, oneshot: boolean,
|
|
36
|
-
* scope: (Object|undefined)}>>}
|
|
37
|
-
*/
|
|
38
|
-
this.events_ = {};
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Fires an event and calls all listeners.
|
|
44
|
-
* @param {string} type The type of event to emit.
|
|
45
|
-
* @param {...*} var_args Any arguments to pass to each listener.
|
|
46
|
-
*/
|
|
47
|
-
webdriver.EventEmitter.prototype.emit = function(type, var_args) {
|
|
48
|
-
var args = Array.prototype.slice.call(arguments, 1);
|
|
49
|
-
var listeners = this.events_[type];
|
|
50
|
-
if (!listeners) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
for (var i = 0; i < listeners.length;) {
|
|
54
|
-
var listener = listeners[i];
|
|
55
|
-
listener.fn.apply(listener.scope, args);
|
|
56
|
-
if (listeners[i] === listener) {
|
|
57
|
-
if (listeners[i].oneshot) {
|
|
58
|
-
listeners.splice(i, 1);
|
|
59
|
-
} else {
|
|
60
|
-
i += 1;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Returns a mutable list of listeners for a specific type of event.
|
|
69
|
-
* @param {string} type The type of event to retrieve the listeners for.
|
|
70
|
-
* @return {!Array.<{fn: !Function, oneshot: boolean,
|
|
71
|
-
* scope: (Object|undefined)}>} The registered listeners for
|
|
72
|
-
* the given event type.
|
|
73
|
-
*/
|
|
74
|
-
webdriver.EventEmitter.prototype.listeners = function(type) {
|
|
75
|
-
var listeners = this.events_[type];
|
|
76
|
-
if (!listeners) {
|
|
77
|
-
listeners = this.events_[type] = [];
|
|
78
|
-
}
|
|
79
|
-
return listeners;
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Registers a listener.
|
|
85
|
-
* @param {string} type The type of event to listen for.
|
|
86
|
-
* @param {!Function} listenerFn The function to invoke when the event is fired.
|
|
87
|
-
* @param {Object=} opt_scope The object in whose scope to invoke the listener.
|
|
88
|
-
* @param {boolean=} opt_oneshot Whether the listener should be removed after
|
|
89
|
-
* the first event is fired.
|
|
90
|
-
* @return {!webdriver.EventEmitter} A self reference.
|
|
91
|
-
* @private
|
|
92
|
-
*/
|
|
93
|
-
webdriver.EventEmitter.prototype.addListener_ = function(type, listenerFn,
|
|
94
|
-
opt_scope, opt_oneshot) {
|
|
95
|
-
var listeners = this.listeners(type);
|
|
96
|
-
var n = listeners.length;
|
|
97
|
-
for (var i = 0; i < n; ++i) {
|
|
98
|
-
if (listeners[i].fn == listenerFn) {
|
|
99
|
-
return this;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
listeners.push({
|
|
104
|
-
fn: listenerFn,
|
|
105
|
-
scope: opt_scope,
|
|
106
|
-
oneshot: !!opt_oneshot
|
|
107
|
-
});
|
|
108
|
-
return this;
|
|
109
|
-
};
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* Registers a listener.
|
|
114
|
-
* @param {string} type The type of event to listen for.
|
|
115
|
-
* @param {!Function} listenerFn The function to invoke when the event is fired.
|
|
116
|
-
* @param {Object=} opt_scope The object in whose scope to invoke the listener.
|
|
117
|
-
* @return {!webdriver.EventEmitter} A self reference.
|
|
118
|
-
*/
|
|
119
|
-
webdriver.EventEmitter.prototype.addListener = function(type, listenerFn,
|
|
120
|
-
opt_scope) {
|
|
121
|
-
return this.addListener_(type, listenerFn, opt_scope);
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
/**
|
|
126
|
-
* Registers a one-time listener which will be called only the first time an
|
|
127
|
-
* event is emitted, after which it will be removed.
|
|
128
|
-
* @param {string} type The type of event to listen for.
|
|
129
|
-
* @param {!Function} listenerFn The function to invoke when the event is fired.
|
|
130
|
-
* @param {Object=} opt_scope The object in whose scope to invoke the listener.
|
|
131
|
-
* @return {!webdriver.EventEmitter} A self reference.
|
|
132
|
-
*/
|
|
133
|
-
webdriver.EventEmitter.prototype.once = function(type, listenerFn, opt_scope) {
|
|
134
|
-
return this.addListener_(type, listenerFn, opt_scope, true);
|
|
135
|
-
};
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* An alias for {@code #addListener()}.
|
|
140
|
-
* @param {string} type The type of event to listen for.
|
|
141
|
-
* @param {!Function} listenerFn The function to invoke when the event is fired.
|
|
142
|
-
* @param {Object=} opt_scope The object in whose scope to invoke the listener.
|
|
143
|
-
* @return {!webdriver.EventEmitter} A self reference.
|
|
144
|
-
*/
|
|
145
|
-
webdriver.EventEmitter.prototype.on =
|
|
146
|
-
webdriver.EventEmitter.prototype.addListener;
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
/**
|
|
150
|
-
* Removes a previously registered event listener.
|
|
151
|
-
* @param {string} type The type of event to unregister.
|
|
152
|
-
* @param {!Function} listenerFn The handler function to remove.
|
|
153
|
-
* @return {!webdriver.EventEmitter} A self reference.
|
|
154
|
-
*/
|
|
155
|
-
webdriver.EventEmitter.prototype.removeListener = function(type, listenerFn) {
|
|
156
|
-
var listeners = this.events_[type];
|
|
157
|
-
if (listeners) {
|
|
158
|
-
var n = listeners.length;
|
|
159
|
-
for (var i = 0; i < n; ++i) {
|
|
160
|
-
if (listeners[i].fn == listenerFn) {
|
|
161
|
-
listeners.splice(i, 1);
|
|
162
|
-
return this;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
return this;
|
|
167
|
-
};
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
/**
|
|
171
|
-
* Removes all listeners for a specific type of event. If no event is
|
|
172
|
-
* specified, all listeners across all types will be removed.
|
|
173
|
-
* @param {string=} opt_type The type of event to remove listeners from.
|
|
174
|
-
* @return {!webdriver.EventEmitter} A self reference.
|
|
175
|
-
*/
|
|
176
|
-
webdriver.EventEmitter.prototype.removeAllListeners = function(opt_type) {
|
|
177
|
-
goog.isDef(opt_type) ? delete this.events_[opt_type] : this.events_ = {};
|
|
178
|
-
return this;
|
|
179
|
-
};
|