| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
WebDriverPreCore
Synopsis
- data W3Spec a
- = Get {
- description :: Text
- path :: UrlPath
- parser :: HttpResponse -> Result a
- | Post {
- description :: Text
- path :: UrlPath
- body :: Value
- parser :: HttpResponse -> Result a
- | PostEmpty {
- description :: Text
- path :: UrlPath
- parser :: HttpResponse -> Result a
- | Delete {
- description :: Text
- path :: UrlPath
- parser :: HttpResponse -> Result a
- = Get {
- newSession :: FullCapabilities -> W3Spec SessionId
- newSession' :: ToJSON a => a -> W3Spec SessionId
- status :: W3Spec DriverStatus
- acceptAlert :: SessionId -> W3Spec ()
- addCookie :: SessionId -> Cookie -> W3Spec ()
- back :: SessionId -> W3Spec ()
- closeWindow :: SessionId -> W3Spec ()
- deleteAllCookies :: SessionId -> W3Spec ()
- deleteCookie :: SessionId -> Text -> W3Spec ()
- deleteSession :: SessionId -> W3Spec ()
- dismissAlert :: SessionId -> W3Spec ()
- executeScript :: SessionId -> Text -> [Value] -> W3Spec Value
- executeScriptAsync :: SessionId -> Text -> [Value] -> W3Spec Value
- forward :: SessionId -> W3Spec ()
- fullscreenWindow :: SessionId -> W3Spec WindowRect
- getAlertText :: SessionId -> W3Spec Text
- getAllCookies :: SessionId -> W3Spec [Cookie]
- getCurrentUrl :: SessionId -> W3Spec Text
- getNamedCookie :: SessionId -> Text -> W3Spec Cookie
- getPageSource :: SessionId -> W3Spec Text
- getTimeouts :: SessionId -> W3Spec Timeouts
- getTitle :: SessionId -> W3Spec Text
- getWindowHandle :: SessionId -> W3Spec WindowHandle
- getWindowHandles :: SessionId -> W3Spec [WindowHandle]
- getWindowRect :: SessionId -> W3Spec WindowRect
- maximizeWindow :: SessionId -> W3Spec WindowRect
- minimizeWindow :: SessionId -> W3Spec WindowRect
- navigateTo :: SessionId -> Text -> W3Spec ()
- newWindow :: SessionId -> W3Spec WindowHandleSpec
- performActions :: SessionId -> Actions -> W3Spec ()
- printPage :: SessionId -> W3Spec Text
- refresh :: SessionId -> W3Spec ()
- releaseActions :: SessionId -> W3Spec ()
- sendAlertText :: SessionId -> Text -> W3Spec ()
- setTimeouts :: SessionId -> Timeouts -> W3Spec ()
- setWindowRect :: SessionId -> WindowRect -> W3Spec WindowRect
- switchToFrame :: SessionId -> FrameReference -> W3Spec ()
- switchToWindow :: SessionId -> WindowHandle -> W3Spec ()
- takeScreenshot :: SessionId -> W3Spec Text
- closeWindow :: SessionId -> W3Spec ()
- fullscreenWindow :: SessionId -> W3Spec WindowRect
- getWindowHandles :: SessionId -> W3Spec [WindowHandle]
- getWindowRect :: SessionId -> W3Spec WindowRect
- maximizeWindow :: SessionId -> W3Spec WindowRect
- minimizeWindow :: SessionId -> W3Spec WindowRect
- newWindow :: SessionId -> W3Spec WindowHandleSpec
- setWindowRect :: SessionId -> WindowRect -> W3Spec WindowRect
- switchToWindow :: SessionId -> WindowHandle -> W3Spec ()
- switchToParentFrame :: SessionId -> W3Spec ()
- findElement :: SessionId -> Selector -> W3Spec ElementId
- findElements :: SessionId -> Selector -> W3Spec [ElementId]
- getActiveElement :: SessionId -> W3Spec ElementId
- elementClear :: SessionId -> ElementId -> W3Spec ()
- elementClick :: SessionId -> ElementId -> W3Spec ()
- elementSendKeys :: SessionId -> ElementId -> Text -> W3Spec ()
- findElementFromElement :: SessionId -> ElementId -> Selector -> W3Spec ElementId
- findElementsFromElement :: SessionId -> ElementId -> Selector -> W3Spec [ElementId]
- getElementAttribute :: SessionId -> ElementId -> Text -> W3Spec Text
- getElementComputedLabel :: SessionId -> ElementId -> W3Spec Text
- getElementComputedRole :: SessionId -> ElementId -> W3Spec Text
- getElementCssValue :: SessionId -> ElementId -> Text -> W3Spec Text
- getElementProperty :: SessionId -> ElementId -> Text -> W3Spec Value
- getElementRect :: SessionId -> ElementId -> W3Spec WindowRect
- getElementShadowRoot :: SessionId -> ElementId -> W3Spec ElementId
- getElementTagName :: SessionId -> ElementId -> W3Spec Text
- getElementText :: SessionId -> ElementId -> W3Spec Text
- isElementEnabled :: SessionId -> ElementId -> W3Spec Bool
- isElementSelected :: SessionId -> ElementId -> W3Spec Bool
- takeElementScreenshot :: SessionId -> ElementId -> W3Spec Text
- findElementFromShadowRoot :: SessionId -> ElementId -> Selector -> W3Spec ElementId
- findElementsFromShadowRoot :: SessionId -> ElementId -> Selector -> W3Spec [ElementId]
- data HttpResponse = MkHttpResponse {
- statusCode :: Int
- statusMessage :: Text
- body :: Value
- data Capabilities = MkCapabilities {
- browserName :: Maybe BrowserName
- browserVersion :: Maybe Text
- platformName :: Maybe PlatformName
- acceptInsecureCerts :: Maybe Bool
- pageLoadStrategy :: Maybe PageLoadStrategy
- proxy :: Maybe Proxy
- timeouts :: Maybe Timeouts
- strictFileInteractability :: Maybe Bool
- unhandledPromptBehavior :: Maybe UnhandledPromptBehavior
- vendorSpecific :: Maybe VendorSpecific
- data FullCapabilities = MkFullCapabilities {}
- data LogLevel
- data Proxy
- data BrowserName
- = Chrome
- | Firefox
- | Safari
- | Edge
- | InternetExplorer
- data DeviceMetrics = MkDeviceMetrics {}
- data Capabilities = MkCapabilities {
- browserName :: Maybe BrowserName
- browserVersion :: Maybe Text
- platformName :: Maybe PlatformName
- acceptInsecureCerts :: Maybe Bool
- pageLoadStrategy :: Maybe PageLoadStrategy
- proxy :: Maybe Proxy
- timeouts :: Maybe Timeouts
- strictFileInteractability :: Maybe Bool
- unhandledPromptBehavior :: Maybe UnhandledPromptBehavior
- vendorSpecific :: Maybe VendorSpecific
- data UnhandledPromptBehavior
- data FullCapabilities = MkFullCapabilities {}
- data Timeouts = MkTimeouts {}
- data PageLoadStrategy
- data PlatformName
- data VendorSpecific
- = ChromeOptions {
- chromeArgs :: Maybe [Text]
- chromeBinary :: Maybe Text
- chromeExtensions :: Maybe [Text]
- chromeLocalState :: Maybe (Map Text Value)
- chromeMobileEmulation :: Maybe MobileEmulation
- chromePrefs :: Maybe (Map Text Value)
- chromeDetach :: Maybe Bool
- chromeDebuggerAddress :: Maybe Text
- chromeExcludeSwitches :: Maybe [Text]
- chromeMinidumpPath :: Maybe FilePath
- chromePerfLoggingPrefs :: Maybe PerfLoggingPrefs
- chromeWindowTypes :: Maybe [Text]
- | EdgeOptions {
- edgeArgs :: Maybe [Text]
- edgeBinary :: Maybe Text
- edgeExtensions :: Maybe [Text]
- edgeLocalState :: Maybe (Map Text Value)
- edgeMobileEmulation :: Maybe MobileEmulation
- edgePrefs :: Maybe (Map Text Value)
- edgeDetach :: Maybe Bool
- edgeDebuggerAddress :: Maybe Text
- edgeExcludeSwitches :: Maybe [Text]
- edgeMinidumpPath :: Maybe FilePath
- edgePerfLoggingPrefs :: Maybe PerfLoggingPrefs
- edgeWindowTypes :: Maybe [Text]
- | FirefoxOptions { }
- | SafariOptions { }
- = ChromeOptions {
- data SocksProxy = MkSocksProxy {
- socksProxy :: Text
- socksVersion :: Int
- data PerfLoggingPrefs = MkPerfLoggingPrefs {}
- data MobileEmulation = MkMobileEmulation {}
- data LogSettings = MkLogSettings {}
- minCapabilities :: BrowserName -> Capabilities
- minFullCapabilities :: BrowserName -> FullCapabilities
- minFirefoxCapabilities :: FullCapabilities
- minChromeCapabilities :: FullCapabilities
- data ErrorClassification
- = NotAnError { }
- | UnrecognisedError { }
- | WebDriverError { }
- data WebDriverErrorType
- = ElementClickIntercepted
- | ElementNotInteractable
- | InsecureCertificate
- | InvalidArgument
- | InvalidCookieDomain
- | InvalidElementState
- | InvalidSelector
- | InvalidSessionId
- | JavascriptError
- | MoveTargetOutOfBounds
- | NoSuchAlert
- | NoSuchCookie
- | NoSuchElement
- | NoSuchFrame
- | NoSuchWindow
- | NoSuchShadowRoot
- | ScriptTimeoutError
- | SessionNotCreated
- | StaleElementReference
- | DetachedShadowRoot
- | Timeout
- | UnableToSetCookie
- | UnableToCaptureScreen
- | UnexpectedAlertOpen
- | UnknownCommand
- | UnknownError
- | UnknownMethod
- | UnsupportedOperation
- errorDescription :: WebDriverErrorType -> Text
- errorCodeToErrorType :: Text -> Either Text WebDriverErrorType
- errorTypeToErrorCode :: WebDriverErrorType -> Text
- parseWebDriverError :: HttpResponse -> ErrorClassification
- parseWebDriverErrorType :: HttpResponse -> Maybe WebDriverErrorType
- data Action
- data KeyAction
- data PointerAction
- = PausePointer { }
- | Up { }
- | Down { }
- | Move { }
- | Cancel
- newtype Actions = MkActions {}
- data Pointer
- data PointerOrigin
- data WheelAction
- newtype WindowHandle = Handle {}
- data WindowHandleSpec = HandleSpec {
- handle :: WindowHandle
- handletype :: HandleType
- data Selector
- data Cookie = MkCookie {}
- newtype SessionId = Session {}
- newtype ElementId = Element {}
- data SameSite
- newtype UrlPath = MkUrlPath {}
- data DriverStatus
- = Ready
- | Running
- | ServiceError {
- statusCode :: Int
- statusMessage :: Text
- | Unknown {
- statusCode :: Int
- statusMessage :: Text
- data HttpResponse = MkHttpResponse {
- statusCode :: Int
- statusMessage :: Text
- body :: Value
- data FrameReference
- data Timeouts = MkTimeouts {}
- data WindowRect = Rect {}
Introduction
What is This Library?
This library provides a minimal abstraction over the WebDriver W3C Protocol endpoints
without providing any implementation. It provides a description of the W3C API as a list of functions returning a W3Spec.
The intention is that other libraries will provide the actual implementation.
You can not use this library directly to drive a browser. If you are looking for a library to drive a browser, you may be interested in an alternative library such haskell-webdriver.
Why This Library?
There are a number of libraries that provide WebDriver bindings for Haskell. However, at the time work on this library commenced the available libraries were either in need of maintenance, required Selenium, or part of larger opinionated testing frameworks.
The goal of the authors of this library is to enable browser interaction in our own high level testing framework. We would prefer to communicate with drivers directly, using the W3C standards (developed largely by the Selenium core contributors) rather than depend on Selenium itself. We would also like to avoid pulling in too many dependencies or potentially incompatible concepts from other high level libraries. To achieve this, we plan to first develop a number of unopinionated, lower level libraries that can be used by others without buying into our entire stack.
This library is the first of those libraries, and is intended to provide a low-dependency base on which fully featured (W3C) WebDriver libraries can be built.
Implementing WebDriver Interaction
Using webdriver-precore to build a webdriver library requires two steps to attain the basic functionality provided by the WebDriver API:
1. Implementing a runner
This is an example of a minimal runner that implements the interaction with WebDriver endpoint definitions as provided by this library.
The first step in writing a WebDriver implementation is to choose an HTTP library. In this example we have chosen req.
Then to implement a run function requires the following:
- Define a function to transform a
W3SpectoRequestParamscompatible with the chosen HTTP library. - Make an HTTP call to WebDriver as per the
RequestParamsand return a simplifiedHttpResponse. - Use the parser provided by the
W3Specto transform theHttpResponseto the desired result type and handle any errors.
Example
The full source for this example can be found in the project repo.
Module Header
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedRecordDot #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE NoFieldSelectors #-}
module IORunnerMinimal ( run ) where
import Data.Aeson (Result (..), Value, object)
import Data.Function ((&), ($), (.))
import Data.Text as T (Text, unpack)
import Data.Text.Encoding (decodeUtf8Lenient)
import WebDriverPreCore (
HttpResponse (..),
W3Spec (..),
parseWebDriverError,
ErrorClassification (..),
UrlPath (..) )
import GHC.IO (IO)
import Data.Int (Int)
import Control.Monad (Monad(..))
import Data.Foldable (foldl')
import GHC.Maybe (Maybe(..))
import Control.Applicative (Applicative(..))
import Control.Monad.Fail (MonadFail(..))
import Data.Monoid ((<>))
import GHC.Show (Show(..))
import Network.HTTP.Req as R
( DELETE (DELETE),
GET (GET),
NoReqBody (NoReqBody),
POST (POST),
ReqBodyJson (ReqBodyJson),
JsonResponse,
defaultHttpConfig,
http,
jsonResponse,
port,
req,
responseBody,
responseStatusCode,
responseStatusMessage,
runReq,
HttpConfig (httpConfigCheckResponse), (/:), HttpBodyAllowed, HttpMethod (..), ProvidesBody, HttpBody, Url, Scheme (..),
)
run function
run :: W3Spec a -> IO a run spec = do let request = mkRequest spec -- 1. Convert W3Spec to params for req response <- callReq request -- 2. Call WebDriver server (via req) and return a simplified HttpResponse parseResponse spec response -- 3. Use the W3Spec parser to convert the HttpResponse to the desired result type and handle any errors
1.1 W3Spec -> ReqRequestParams
Transform W3Spec to ReqRequestParams
-- ReqRequestParams are specific to the chosen HTTP library (in this example req)
-- The port would not normally be hard coded
mkRequest :: forall a. W3Spec a -> ReqRequestParams
mkRequest spec = case spec of
Get {} -> MkRequestParams url GET NoReqBody 4444
Post {body} -> MkRequestParams url POST (ReqBodyJson body) 4444
PostEmpty {} -> MkRequestParams url POST (ReqBodyJson $ object []) 4444
Delete {} -> MkRequestParams url DELETE NoReqBody 4444
where
url = foldl' (/:) (http "127.0.0.1") spec.path.segments
-- A custom data type for request params specific to req
data ReqRequestParams where
MkRequestParams ::
(HttpBodyAllowed (AllowsBody method) (ProvidesBody body), HttpMethod method, HttpBody body) =>
{ url :: Url 'Http,
method :: method,
body :: body,
port :: Int
} ->
ReqRequestParams
1.2 Call the WebDriver
Call WebDriver endpoints based on ReqRequestParams
callReq :: ReqRequestParams -> IO HttpResponse
callReq MkRequestParams {url, method, body, port = prt} =
runReq defaultHttpConfig {httpConfigCheckResponse = \_ _ _ -> Nothing} $ do
r <- req method url body jsonResponse $ port prt
pure $
MkHttpResponse
{ statusCode = responseStatusCode r,
statusMessage = responseStatusText r,
body = responseBody r :: Value
}
where
responseStatusText = decodeUtf8Lenient . responseStatusMessage
1.3 Parse HttpResponse using the parser provided by W3Spec
Parse the WebDriver response (in this implimentation we are just throwing exceptions on failure)
parseResponse :: W3Spec a -> HttpResponse -> IO a
parseResponse spec r =
spec.parser r
& \case
Error msg -> fail $ parseWebDriverError r & case
e@NotAnError {} -> unpack spec.description <> "\n" <> "Failed to parse response:\n " <> msg <> "\nin response:" <> show e
e@UnrecognisedError {} -> "UnrecognisedError:\n " <> "\nin response:" <> show e
e@WebDriverError {} -> "WebDriver error thrown:\n " <> show e
Success a -> pure a
2. Applying the runner to the W3Spec functions
Create an IO API by applying run to each endpoint definition exposed by this library
Full source can be found in the project repo
module IOAPI where import WebDriverPreCore qualified as W status :: IO DriverStatus status = run W.status newSession :: W.FullCapabilities -> IO SessionId newSession = run . W.newSession getTimeouts :: SessionId -> IO W.Timeouts getTimeouts = run . W.getTimeouts setTimeouts :: SessionId -> W.Timeouts -> IO () setTimeouts s = run . W.setTimeouts s getCurrentUrl :: SessionId -> IO Text getCurrentUrl = run . W.getCurrentUrl getTitle :: SessionId -> IO Text getTitle = run . W.getTitle maximizeWindow :: SessionId -> IO W.WindowRect maximizeWindow = run . W.maximizeWindow -- ... and 50+ more API functions
Using the API
Once all the required endpoints are implemented you will be able to interact with browsers via WebDriver
Prerequisites:
- An appropriate browser and WebDriver installed.
- WebDriver started.
e.g. For Firefox and geckodriver on Linux or WSL you could start geckodriver from the terminal as follows: Note: we are setting the port to 4444, which is the hard coded port in our example.
>>>pkill -f geckodriver || true && geckodriver --port=4444 &
or with logging:
>>>pkill -f geckodriver || true && geckodriver --log trace --port=4444 &
or similarly for Chrome and chromedriver:
>>>pkill -f chromedriver || true && chromedriver --port=4444 &
or with logging:
>>>pkill -f chromedriver || true && chromedriver --log-level=ALL --port=4444 &
With the driver running you can now interact with the browser:
Example: A full example source file can be found in the project repo.
demoForwardBackRefresh :: IO () demoForwardBackRefresh = do ses <- newSession $ minFullCapabilities Firefox navigateTo ses "https://the-internet.herokuapp.com/" link findElement ses $ CSS "#content ul:nth-child(4) > li:nth-child(6) > a:nth-child(1)" elementClick ses link back ses forward ses refresh ses deleteSession ses
Note this is a minimal API. There is plenty of scope to build on this to provide a more user-friendly functions.
The API
The W3Spec Type
The W3Spec type is a specification for a WebDriver command.
Every endpoint function in this module returns a W3Spec object.
Constructors
| Get | |
Fields
| |
| Post | |
Fields
| |
| PostEmpty | |
Fields
| |
| Delete | |
Fields
| |
Root Methods
newSession :: FullCapabilities -> W3Spec SessionId Source #
Return a spec to create a new session given FullCapabilities object.
newSession' can be used if FullCapabilities doesn't meet your requirements.
POST /session New Session
newSession' :: ToJSON a => a -> W3Spec SessionId Source #
Return a spec to create a new session given an object of any type that implements ToJSON.
The FullCapabilities type and associated types should work for the vast majority use cases, but if the required capabilities are not covered by the types provided, newSession'.
can be used with a custom type instead. newSession' works with any type that implements ToJSON, (including an Aeson Value).
Obviously, any type used must produce a JSON object compatible with capabilities as defined W3C spec.
POST /session New Session
Session Methods
See also newSession and newSession'
acceptAlert :: SessionId -> W3Spec () Source #
closeWindow :: SessionId -> W3Spec () Source #
deleteAllCookies :: SessionId -> W3Spec () Source #
deleteSession :: SessionId -> W3Spec () Source #
dismissAlert :: SessionId -> W3Spec () Source #
getWindowHandles :: SessionId -> W3Spec [WindowHandle] Source #
releaseActions :: SessionId -> W3Spec () Source #
setWindowRect :: SessionId -> WindowRect -> W3Spec WindowRect Source #
Return a spec to set the window rect of the current window given a SessionId and WindowRect.
POST /session/{session id}/window/rect Set Window RectswitchToFrame :: SessionId -> FrameReference -> W3Spec () Source #
Return a spec to switch to a different frame given a SessionId and FrameReference.
POST /session/{session id}/frame Switch To FrameswitchToWindow :: SessionId -> WindowHandle -> W3Spec () Source #
Return a spec to switch to a different window given a SessionId and WindowHandle.
POST /session/{session id}/window Switch To WindowWindow Methods
closeWindow :: SessionId -> W3Spec () Source #
getWindowHandles :: SessionId -> W3Spec [WindowHandle] Source #
setWindowRect :: SessionId -> WindowRect -> W3Spec WindowRect Source #
Return a spec to set the window rect of the current window given a SessionId and WindowRect.
POST /session/{session id}/window/rect Set Window RectswitchToWindow :: SessionId -> WindowHandle -> W3Spec () Source #
Return a spec to switch to a different window given a SessionId and WindowHandle.
POST /session/{session id}/window Switch To WindowFrame Methods
switchToParentFrame :: SessionId -> W3Spec () Source #
Element(s) Methods
Element Instance Methods
getElementRect :: SessionId -> ElementId -> W3Spec WindowRect Source #
Shadow DOM Methods
HTTP Response
data HttpResponse Source #
HttpResponse represents a WebDriver HTTP response.
Constructors
| MkHttpResponse | |
Fields
| |
Instances
| Show HttpResponse Source # | |
Defined in WebDriverPreCore.HttpResponse Methods showsPrec :: Int -> HttpResponse -> ShowS # show :: HttpResponse -> String # showList :: [HttpResponse] -> ShowS # | |
| Eq HttpResponse Source # | |
Defined in WebDriverPreCore.HttpResponse | |
| Ord HttpResponse Source # | |
Defined in WebDriverPreCore.HttpResponse Methods compare :: HttpResponse -> HttpResponse -> Ordering # (<) :: HttpResponse -> HttpResponse -> Bool # (<=) :: HttpResponse -> HttpResponse -> Bool # (>) :: HttpResponse -> HttpResponse -> Bool # (>=) :: HttpResponse -> HttpResponse -> Bool # max :: HttpResponse -> HttpResponse -> HttpResponse # min :: HttpResponse -> HttpResponse -> HttpResponse # | |
Capabilities
data Capabilities Source #
Capabilities define the properties of the session and are passed to the webdriver
via fields of the FullCapabilities object.
See spec
See also: FullCapabilities and related constructors such as minCapabilities,
minFullCapabilities, minFirefoxCapabilities and minChromeCapabilities
Constructors
Instances
data FullCapabilities Source #
FullCapabilities is the object that is passed to webdriver to define the properties of the session via the newSession function.
It is a combination of alwaysMatch and firstMatch properties.
See spec
See also: Capabilities and related constructors such as minCapabilities, minFullCapabilities, minFirefoxCapabilities and minChromeCapabilities
Constructors
| MkFullCapabilities | |
Fields
| |
Instances
| FromJSON FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser FullCapabilities # parseJSONList :: Value -> Parser [FullCapabilities] # | |||||
| ToJSON FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: FullCapabilities -> Value # toEncoding :: FullCapabilities -> Encoding # toJSONList :: [FullCapabilities] -> Value # toEncodingList :: [FullCapabilities] -> Encoding # omitField :: FullCapabilities -> Bool # | |||||
| Generic FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: FullCapabilities -> Rep FullCapabilities x # to :: Rep FullCapabilities x -> FullCapabilities # | |||||
| Show FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> FullCapabilities -> ShowS # show :: FullCapabilities -> String # showList :: [FullCapabilities] -> ShowS # | |||||
| type Rep FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep FullCapabilities = D1 ('MetaData "FullCapabilities" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkFullCapabilities" 'PrefixI 'True) (S1 ('MetaSel ('Just "alwaysMatch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Capabilities)) :*: S1 ('MetaSel ('Just "firstMatch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Capabilities]))) | |||||
Browser log levels as defined in vendor specs
Constructors
| Trace | Most verbose logging |
| Debug | Debug-level information |
| Config | Configuration details |
| Info | General operational logs |
| Warning | Potential issues |
| Error | Recoverable errors |
| Fatal | Critical failures |
| Off | No logging |
Instances
| FromJSON LogLevel Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON LogLevel Source # | |||||
| Bounded LogLevel Source # | |||||
| Enum LogLevel Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| Generic LogLevel Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show LogLevel Source # | |||||
| Eq LogLevel Source # | |||||
| type Rep LogLevel Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep LogLevel = D1 ('MetaData "LogLevel" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (((C1 ('MetaCons "Trace" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Debug" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Config" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Info" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Warning" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Error" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Fatal" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Off" 'PrefixI 'False) (U1 :: Type -> Type)))) | |||||
Constructors
| Direct | |
| Manual | |
| AutoDetect | |
| System | |
| Pac | |
Fields | |
data BrowserName Source #
Constructors
| Chrome | |
| Firefox | |
| Safari | |
| Edge | |
| InternetExplorer |
Instances
| FromJSON BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: BrowserName -> Value # toEncoding :: BrowserName -> Encoding # toJSONList :: [BrowserName] -> Value # toEncodingList :: [BrowserName] -> Encoding # omitField :: BrowserName -> Bool # | |||||
| Bounded BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| Enum BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods succ :: BrowserName -> BrowserName # pred :: BrowserName -> BrowserName # toEnum :: Int -> BrowserName # fromEnum :: BrowserName -> Int # enumFrom :: BrowserName -> [BrowserName] # enumFromThen :: BrowserName -> BrowserName -> [BrowserName] # enumFromTo :: BrowserName -> BrowserName -> [BrowserName] # enumFromThenTo :: BrowserName -> BrowserName -> BrowserName -> [BrowserName] # | |||||
| Generic BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> BrowserName -> ShowS # show :: BrowserName -> String # showList :: [BrowserName] -> ShowS # | |||||
| Eq BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| type Rep BrowserName Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep BrowserName = D1 ('MetaData "BrowserName" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) ((C1 ('MetaCons "Chrome" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Firefox" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Safari" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Edge" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "InternetExplorer" 'PrefixI 'False) (U1 :: Type -> Type)))) | |||||
data DeviceMetrics Source #
Constructors
| MkDeviceMetrics | |
Instances
| FromJSON DeviceMetrics Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser DeviceMetrics # parseJSONList :: Value -> Parser [DeviceMetrics] # | |||||
| ToJSON DeviceMetrics Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: DeviceMetrics -> Value # toEncoding :: DeviceMetrics -> Encoding # toJSONList :: [DeviceMetrics] -> Value # toEncodingList :: [DeviceMetrics] -> Encoding # omitField :: DeviceMetrics -> Bool # | |||||
| Generic DeviceMetrics Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show DeviceMetrics Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> DeviceMetrics -> ShowS # show :: DeviceMetrics -> String # showList :: [DeviceMetrics] -> ShowS # | |||||
| Eq DeviceMetrics Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods (==) :: DeviceMetrics -> DeviceMetrics -> Bool # (/=) :: DeviceMetrics -> DeviceMetrics -> Bool # | |||||
| type Rep DeviceMetrics Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep DeviceMetrics = D1 ('MetaData "DeviceMetrics" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkDeviceMetrics" 'PrefixI 'True) ((S1 ('MetaSel ('Just "width") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "height") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "pixelRatio") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Double) :*: S1 ('MetaSel ('Just "touch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool)))) | |||||
data Capabilities Source #
Capabilities define the properties of the session and are passed to the webdriver
via fields of the FullCapabilities object.
See spec
See also: FullCapabilities and related constructors such as minCapabilities,
minFullCapabilities, minFirefoxCapabilities and minChromeCapabilities
Constructors
| MkCapabilities | |
Fields
| |
Instances
| FromJSON Capabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON Capabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: Capabilities -> Value # toEncoding :: Capabilities -> Encoding # toJSONList :: [Capabilities] -> Value # toEncodingList :: [Capabilities] -> Encoding # omitField :: Capabilities -> Bool # | |||||
| Generic Capabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show Capabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> Capabilities -> ShowS # show :: Capabilities -> String # showList :: [Capabilities] -> ShowS # | |||||
| Eq Capabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| type Rep Capabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep Capabilities = D1 ('MetaData "Capabilities" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkCapabilities" 'PrefixI 'True) (((S1 ('MetaSel ('Just "browserName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe BrowserName)) :*: S1 ('MetaSel ('Just "browserVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "platformName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe PlatformName)) :*: (S1 ('MetaSel ('Just "acceptInsecureCerts") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "pageLoadStrategy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe PageLoadStrategy))))) :*: ((S1 ('MetaSel ('Just "proxy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Proxy)) :*: S1 ('MetaSel ('Just "timeouts") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Timeouts))) :*: (S1 ('MetaSel ('Just "strictFileInteractability") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "unhandledPromptBehavior") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe UnhandledPromptBehavior)) :*: S1 ('MetaSel ('Just "vendorSpecific") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe VendorSpecific))))))) | |||||
data UnhandledPromptBehavior Source #
Constructors
| Dismiss | |
| Accept | |
| DismissAndNotify | |
| AcceptAndNotify | |
| Ignore |
Instances
| FromJSON UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser UnhandledPromptBehavior # parseJSONList :: Value -> Parser [UnhandledPromptBehavior] # | |||||
| ToJSON UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: UnhandledPromptBehavior -> Value # toEncoding :: UnhandledPromptBehavior -> Encoding # toJSONList :: [UnhandledPromptBehavior] -> Value # | |||||
| Bounded UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| Enum UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods succ :: UnhandledPromptBehavior -> UnhandledPromptBehavior # pred :: UnhandledPromptBehavior -> UnhandledPromptBehavior # toEnum :: Int -> UnhandledPromptBehavior # fromEnum :: UnhandledPromptBehavior -> Int # enumFrom :: UnhandledPromptBehavior -> [UnhandledPromptBehavior] # enumFromThen :: UnhandledPromptBehavior -> UnhandledPromptBehavior -> [UnhandledPromptBehavior] # enumFromTo :: UnhandledPromptBehavior -> UnhandledPromptBehavior -> [UnhandledPromptBehavior] # enumFromThenTo :: UnhandledPromptBehavior -> UnhandledPromptBehavior -> UnhandledPromptBehavior -> [UnhandledPromptBehavior] # | |||||
| Generic UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: UnhandledPromptBehavior -> Rep UnhandledPromptBehavior x # to :: Rep UnhandledPromptBehavior x -> UnhandledPromptBehavior # | |||||
| Show UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> UnhandledPromptBehavior -> ShowS # show :: UnhandledPromptBehavior -> String # showList :: [UnhandledPromptBehavior] -> ShowS # | |||||
| Eq UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods (==) :: UnhandledPromptBehavior -> UnhandledPromptBehavior -> Bool # (/=) :: UnhandledPromptBehavior -> UnhandledPromptBehavior -> Bool # | |||||
| type Rep UnhandledPromptBehavior Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep UnhandledPromptBehavior = D1 ('MetaData "UnhandledPromptBehavior" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) ((C1 ('MetaCons "Dismiss" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Accept" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DismissAndNotify" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "AcceptAndNotify" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Ignore" 'PrefixI 'False) (U1 :: Type -> Type)))) | |||||
data FullCapabilities Source #
FullCapabilities is the object that is passed to webdriver to define the properties of the session via the newSession function.
It is a combination of alwaysMatch and firstMatch properties.
See spec
See also: Capabilities and related constructors such as minCapabilities, minFullCapabilities, minFirefoxCapabilities and minChromeCapabilities
Constructors
| MkFullCapabilities | |
Fields
| |
Instances
| FromJSON FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser FullCapabilities # parseJSONList :: Value -> Parser [FullCapabilities] # | |||||
| ToJSON FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: FullCapabilities -> Value # toEncoding :: FullCapabilities -> Encoding # toJSONList :: [FullCapabilities] -> Value # toEncodingList :: [FullCapabilities] -> Encoding # omitField :: FullCapabilities -> Bool # | |||||
| Generic FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: FullCapabilities -> Rep FullCapabilities x # to :: Rep FullCapabilities x -> FullCapabilities # | |||||
| Show FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> FullCapabilities -> ShowS # show :: FullCapabilities -> String # showList :: [FullCapabilities] -> ShowS # | |||||
| type Rep FullCapabilities Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep FullCapabilities = D1 ('MetaData "FullCapabilities" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkFullCapabilities" 'PrefixI 'True) (S1 ('MetaSel ('Just "alwaysMatch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Capabilities)) :*: S1 ('MetaSel ('Just "firstMatch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Capabilities]))) | |||||
Timeouts in milliseconds spec
Instances
| FromJSON Timeouts Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON Timeouts Source # | |||||
| Generic Timeouts Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show Timeouts Source # | |||||
| Eq Timeouts Source # | |||||
| type Rep Timeouts Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep Timeouts = D1 ('MetaData "Timeouts" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkTimeouts" 'PrefixI 'True) (S1 ('MetaSel ('Just "implicit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: (S1 ('MetaSel ('Just "pageLoad") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: S1 ('MetaSel ('Just "script") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int))))) | |||||
data PageLoadStrategy Source #
Instances
| FromJSON PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser PageLoadStrategy # parseJSONList :: Value -> Parser [PageLoadStrategy] # | |||||
| ToJSON PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: PageLoadStrategy -> Value # toEncoding :: PageLoadStrategy -> Encoding # toJSONList :: [PageLoadStrategy] -> Value # toEncodingList :: [PageLoadStrategy] -> Encoding # omitField :: PageLoadStrategy -> Bool # | |||||
| Bounded PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| Enum PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods succ :: PageLoadStrategy -> PageLoadStrategy # pred :: PageLoadStrategy -> PageLoadStrategy # toEnum :: Int -> PageLoadStrategy # fromEnum :: PageLoadStrategy -> Int # enumFrom :: PageLoadStrategy -> [PageLoadStrategy] # enumFromThen :: PageLoadStrategy -> PageLoadStrategy -> [PageLoadStrategy] # enumFromTo :: PageLoadStrategy -> PageLoadStrategy -> [PageLoadStrategy] # enumFromThenTo :: PageLoadStrategy -> PageLoadStrategy -> PageLoadStrategy -> [PageLoadStrategy] # | |||||
| Generic PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: PageLoadStrategy -> Rep PageLoadStrategy x # to :: Rep PageLoadStrategy x -> PageLoadStrategy # | |||||
| Show PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> PageLoadStrategy -> ShowS # show :: PageLoadStrategy -> String # showList :: [PageLoadStrategy] -> ShowS # | |||||
| Eq PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods (==) :: PageLoadStrategy -> PageLoadStrategy -> Bool # (/=) :: PageLoadStrategy -> PageLoadStrategy -> Bool # | |||||
| type Rep PageLoadStrategy Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep PageLoadStrategy = D1 ('MetaData "PageLoadStrategy" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "None'" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Eager" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Normal" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
data PlatformName Source #
Instances
| FromJSON PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: PlatformName -> Value # toEncoding :: PlatformName -> Encoding # toJSONList :: [PlatformName] -> Value # toEncodingList :: [PlatformName] -> Encoding # omitField :: PlatformName -> Bool # | |||||
| Bounded PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| Enum PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods succ :: PlatformName -> PlatformName # pred :: PlatformName -> PlatformName # toEnum :: Int -> PlatformName # fromEnum :: PlatformName -> Int # enumFrom :: PlatformName -> [PlatformName] # enumFromThen :: PlatformName -> PlatformName -> [PlatformName] # enumFromTo :: PlatformName -> PlatformName -> [PlatformName] # enumFromThenTo :: PlatformName -> PlatformName -> PlatformName -> [PlatformName] # | |||||
| Generic PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> PlatformName -> ShowS # show :: PlatformName -> String # showList :: [PlatformName] -> ShowS # | |||||
| Eq PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| type Rep PlatformName Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep PlatformName = D1 ('MetaData "PlatformName" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) ((C1 ('MetaCons "Windows" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Mac" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Linux" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Android" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IOS" 'PrefixI 'False) (U1 :: Type -> Type)))) | |||||
data VendorSpecific Source #
Constructors
| ChromeOptions | Chrome-specific capabilities |
Fields
| |
| EdgeOptions | |
Fields
| |
| FirefoxOptions | |
Fields
| |
| SafariOptions | |
Fields | |
Instances
| ToJSON VendorSpecific Source # | ToJSON Instance for VendorSpecific | ||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: VendorSpecific -> Value # toEncoding :: VendorSpecific -> Encoding # toJSONList :: [VendorSpecific] -> Value # toEncodingList :: [VendorSpecific] -> Encoding # omitField :: VendorSpecific -> Bool # | |||||
| Generic VendorSpecific Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: VendorSpecific -> Rep VendorSpecific x # to :: Rep VendorSpecific x -> VendorSpecific # | |||||
| Show VendorSpecific Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> VendorSpecific -> ShowS # show :: VendorSpecific -> String # showList :: [VendorSpecific] -> ShowS # | |||||
| Eq VendorSpecific Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods (==) :: VendorSpecific -> VendorSpecific -> Bool # (/=) :: VendorSpecific -> VendorSpecific -> Bool # | |||||
| type Rep VendorSpecific Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep VendorSpecific = D1 ('MetaData "VendorSpecific" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) ((C1 ('MetaCons "ChromeOptions" 'PrefixI 'True) (((S1 ('MetaSel ('Just "chromeArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])) :*: (S1 ('MetaSel ('Just "chromeBinary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "chromeExtensions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])))) :*: (S1 ('MetaSel ('Just "chromeLocalState") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Map Text Value))) :*: (S1 ('MetaSel ('Just "chromeMobileEmulation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe MobileEmulation)) :*: S1 ('MetaSel ('Just "chromePrefs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Map Text Value)))))) :*: ((S1 ('MetaSel ('Just "chromeDetach") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "chromeDebuggerAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "chromeExcludeSwitches") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])))) :*: (S1 ('MetaSel ('Just "chromeMinidumpPath") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe FilePath)) :*: (S1 ('MetaSel ('Just "chromePerfLoggingPrefs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe PerfLoggingPrefs)) :*: S1 ('MetaSel ('Just "chromeWindowTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])))))) :+: C1 ('MetaCons "EdgeOptions" 'PrefixI 'True) (((S1 ('MetaSel ('Just "edgeArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])) :*: (S1 ('MetaSel ('Just "edgeBinary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "edgeExtensions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])))) :*: (S1 ('MetaSel ('Just "edgeLocalState") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Map Text Value))) :*: (S1 ('MetaSel ('Just "edgeMobileEmulation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe MobileEmulation)) :*: S1 ('MetaSel ('Just "edgePrefs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Map Text Value)))))) :*: ((S1 ('MetaSel ('Just "edgeDetach") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "edgeDebuggerAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "edgeExcludeSwitches") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])))) :*: (S1 ('MetaSel ('Just "edgeMinidumpPath") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe FilePath)) :*: (S1 ('MetaSel ('Just "edgePerfLoggingPrefs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe PerfLoggingPrefs)) :*: S1 ('MetaSel ('Just "edgeWindowTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text]))))))) :+: (C1 ('MetaCons "FirefoxOptions" 'PrefixI 'True) ((S1 ('MetaSel ('Just "firefoxArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text])) :*: S1 ('MetaSel ('Just "firefoxBinary") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "firefoxProfile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "firefoxLog") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe LogSettings)))) :+: C1 ('MetaCons "SafariOptions" 'PrefixI 'True) (S1 ('MetaSel ('Just "safariAutomaticInspection") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "safariAutomaticProfiling") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool))))) | |||||
data SocksProxy Source #
Constructors
| MkSocksProxy | |
Fields
| |
Instances
| FromJSON SocksProxy Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON SocksProxy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: SocksProxy -> Value # toEncoding :: SocksProxy -> Encoding # toJSONList :: [SocksProxy] -> Value # toEncodingList :: [SocksProxy] -> Encoding # omitField :: SocksProxy -> Bool # | |||||
| Generic SocksProxy Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show SocksProxy Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> SocksProxy -> ShowS # show :: SocksProxy -> String # showList :: [SocksProxy] -> ShowS # | |||||
| Eq SocksProxy Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| type Rep SocksProxy Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep SocksProxy = D1 ('MetaData "SocksProxy" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkSocksProxy" 'PrefixI 'True) (S1 ('MetaSel ('Just "socksProxy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "socksVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int))) | |||||
data PerfLoggingPrefs Source #
Constructors
| MkPerfLoggingPrefs | |
Fields | |
Instances
| FromJSON PerfLoggingPrefs Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser PerfLoggingPrefs # parseJSONList :: Value -> Parser [PerfLoggingPrefs] # | |||||
| ToJSON PerfLoggingPrefs Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: PerfLoggingPrefs -> Value # toEncoding :: PerfLoggingPrefs -> Encoding # toJSONList :: [PerfLoggingPrefs] -> Value # toEncodingList :: [PerfLoggingPrefs] -> Encoding # omitField :: PerfLoggingPrefs -> Bool # | |||||
| Generic PerfLoggingPrefs Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: PerfLoggingPrefs -> Rep PerfLoggingPrefs x # to :: Rep PerfLoggingPrefs x -> PerfLoggingPrefs # | |||||
| Show PerfLoggingPrefs Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> PerfLoggingPrefs -> ShowS # show :: PerfLoggingPrefs -> String # showList :: [PerfLoggingPrefs] -> ShowS # | |||||
| Eq PerfLoggingPrefs Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods (==) :: PerfLoggingPrefs -> PerfLoggingPrefs -> Bool # (/=) :: PerfLoggingPrefs -> PerfLoggingPrefs -> Bool # | |||||
| type Rep PerfLoggingPrefs Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep PerfLoggingPrefs = D1 ('MetaData "PerfLoggingPrefs" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkPerfLoggingPrefs" 'PrefixI 'True) ((S1 ('MetaSel ('Just "enableNetwork") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "enablePage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool))) :*: (S1 ('MetaSel ('Just "enableTimeline") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: (S1 ('MetaSel ('Just "traceCategories") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "bufferUsageReportingInterval") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)))))) | |||||
data MobileEmulation Source #
Constructors
| MkMobileEmulation | |
Fields
| |
Instances
| FromJSON MobileEmulation Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods parseJSON :: Value -> Parser MobileEmulation # parseJSONList :: Value -> Parser [MobileEmulation] # | |||||
| ToJSON MobileEmulation Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: MobileEmulation -> Value # toEncoding :: MobileEmulation -> Encoding # toJSONList :: [MobileEmulation] -> Value # toEncodingList :: [MobileEmulation] -> Encoding # omitField :: MobileEmulation -> Bool # | |||||
| Generic MobileEmulation Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
Methods from :: MobileEmulation -> Rep MobileEmulation x # to :: Rep MobileEmulation x -> MobileEmulation # | |||||
| Show MobileEmulation Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> MobileEmulation -> ShowS # show :: MobileEmulation -> String # showList :: [MobileEmulation] -> ShowS # | |||||
| Eq MobileEmulation Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods (==) :: MobileEmulation -> MobileEmulation -> Bool # (/=) :: MobileEmulation -> MobileEmulation -> Bool # | |||||
| type Rep MobileEmulation Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep MobileEmulation = D1 ('MetaData "MobileEmulation" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkMobileEmulation" 'PrefixI 'True) (S1 ('MetaSel ('Just "deviceName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "deviceMetrics") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe DeviceMetrics)) :*: S1 ('MetaSel ('Just "userAgent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))))) | |||||
data LogSettings Source #
Log settings structure for vendor capabilities
Constructors
| MkLogSettings | |
Instances
| FromJSON LogSettings Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON LogSettings Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods toJSON :: LogSettings -> Value # toEncoding :: LogSettings -> Encoding # toJSONList :: [LogSettings] -> Value # toEncodingList :: [LogSettings] -> Encoding # omitField :: LogSettings -> Bool # | |||||
| Generic LogSettings Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show LogSettings Source # | |||||
Defined in WebDriverPreCore.Capabilities Methods showsPrec :: Int -> LogSettings -> ShowS # show :: LogSettings -> String # showList :: [LogSettings] -> ShowS # | |||||
| Eq LogSettings Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| type Rep LogSettings Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep LogSettings = D1 ('MetaData "LogSettings" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkLogSettings" 'PrefixI 'True) (S1 ('MetaSel ('Just "level") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 LogLevel))) | |||||
minCapabilities :: BrowserName -> Capabilities Source #
Returns the minimal Capabilities object for a given browser The browserName is the only field populated See spec
minFullCapabilities :: BrowserName -> FullCapabilities Source #
Returns the minimal FullCapabilities object for a given browser
The browserName in the alwaysMatch field is the only field populated
See spec
minFirefoxCapabilities :: FullCapabilities Source #
Returns the minimal FullCapabilities object for Firefox
minChromeCapabilities :: FullCapabilities Source #
Returns the minimal FullCapabilities object for Chrome
Errors
data ErrorClassification Source #
Constructors
| NotAnError | |
Fields | |
| UnrecognisedError | |
Fields | |
| WebDriverError | |
Fields | |
Instances
| Show ErrorClassification Source # | |
Defined in WebDriverPreCore.Error Methods showsPrec :: Int -> ErrorClassification -> ShowS # show :: ErrorClassification -> String # showList :: [ErrorClassification] -> ShowS # | |
| Eq ErrorClassification Source # | |
Defined in WebDriverPreCore.Error Methods (==) :: ErrorClassification -> ErrorClassification -> Bool # (/=) :: ErrorClassification -> ErrorClassification -> Bool # | |
| Ord ErrorClassification Source # | |
Defined in WebDriverPreCore.Error Methods compare :: ErrorClassification -> ErrorClassification -> Ordering # (<) :: ErrorClassification -> ErrorClassification -> Bool # (<=) :: ErrorClassification -> ErrorClassification -> Bool # (>) :: ErrorClassification -> ErrorClassification -> Bool # (>=) :: ErrorClassification -> ErrorClassification -> Bool # max :: ErrorClassification -> ErrorClassification -> ErrorClassification # min :: ErrorClassification -> ErrorClassification -> ErrorClassification # | |
data WebDriverErrorType Source #
Known WevDriver error types: spec
Constructors
| ElementClickIntercepted | |
| ElementNotInteractable | |
| InsecureCertificate | |
| InvalidArgument | |
| InvalidCookieDomain | |
| InvalidElementState | |
| InvalidSelector | |
| InvalidSessionId | |
| JavascriptError | |
| MoveTargetOutOfBounds | |
| NoSuchAlert | |
| NoSuchCookie | |
| NoSuchElement | |
| NoSuchFrame | |
| NoSuchWindow | |
| NoSuchShadowRoot | |
| ScriptTimeoutError | |
| SessionNotCreated | |
| StaleElementReference | |
| DetachedShadowRoot | |
| Timeout | |
| UnableToSetCookie | |
| UnableToCaptureScreen | |
| UnexpectedAlertOpen | |
| UnknownCommand | |
| UnknownError | |
| UnknownMethod | |
| UnsupportedOperation |
Instances
| Bounded WebDriverErrorType Source # | |
Defined in WebDriverPreCore.Error | |
| Enum WebDriverErrorType Source # | |
Defined in WebDriverPreCore.Error Methods succ :: WebDriverErrorType -> WebDriverErrorType # pred :: WebDriverErrorType -> WebDriverErrorType # toEnum :: Int -> WebDriverErrorType # fromEnum :: WebDriverErrorType -> Int # enumFrom :: WebDriverErrorType -> [WebDriverErrorType] # enumFromThen :: WebDriverErrorType -> WebDriverErrorType -> [WebDriverErrorType] # enumFromTo :: WebDriverErrorType -> WebDriverErrorType -> [WebDriverErrorType] # enumFromThenTo :: WebDriverErrorType -> WebDriverErrorType -> WebDriverErrorType -> [WebDriverErrorType] # | |
| Show WebDriverErrorType Source # | |
Defined in WebDriverPreCore.Error Methods showsPrec :: Int -> WebDriverErrorType -> ShowS # show :: WebDriverErrorType -> String # showList :: [WebDriverErrorType] -> ShowS # | |
| Eq WebDriverErrorType Source # | |
Defined in WebDriverPreCore.Error Methods (==) :: WebDriverErrorType -> WebDriverErrorType -> Bool # (/=) :: WebDriverErrorType -> WebDriverErrorType -> Bool # | |
| Ord WebDriverErrorType Source # | |
Defined in WebDriverPreCore.Error Methods compare :: WebDriverErrorType -> WebDriverErrorType -> Ordering # (<) :: WebDriverErrorType -> WebDriverErrorType -> Bool # (<=) :: WebDriverErrorType -> WebDriverErrorType -> Bool # (>) :: WebDriverErrorType -> WebDriverErrorType -> Bool # (>=) :: WebDriverErrorType -> WebDriverErrorType -> Bool # max :: WebDriverErrorType -> WebDriverErrorType -> WebDriverErrorType # min :: WebDriverErrorType -> WebDriverErrorType -> WebDriverErrorType # | |
Action Types
Constructors
| NoneAction | |
Fields
| |
| Key | |
Fields
| |
| Pointer | |
| Wheel | |
Fields
| |
data PointerAction Source #
Constructors
| PausePointer | |
| Up | |
| Down | |
| Move | |
| Cancel | |
Instances
| ToJSON PointerAction Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods toJSON :: PointerAction -> Value # toEncoding :: PointerAction -> Encoding # toJSONList :: [PointerAction] -> Value # toEncodingList :: [PointerAction] -> Encoding # omitField :: PointerAction -> Bool # | |
| Show PointerAction Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> PointerAction -> ShowS # show :: PointerAction -> String # showList :: [PointerAction] -> ShowS # | |
| Eq PointerAction Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods (==) :: PointerAction -> PointerAction -> Bool # (/=) :: PointerAction -> PointerAction -> Bool # | |
data PointerOrigin Source #
Constructors
| Viewport | |
| OriginPointer | |
| OriginElement ElementId |
Instances
| ToJSON PointerOrigin Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods toJSON :: PointerOrigin -> Value # toEncoding :: PointerOrigin -> Encoding # toJSONList :: [PointerOrigin] -> Value # toEncodingList :: [PointerOrigin] -> Encoding # omitField :: PointerOrigin -> Bool # | |
| Show PointerOrigin Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> PointerOrigin -> ShowS # show :: PointerOrigin -> String # showList :: [PointerOrigin] -> ShowS # | |
| Eq PointerOrigin Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods (==) :: PointerOrigin -> PointerOrigin -> Bool # (/=) :: PointerOrigin -> PointerOrigin -> Bool # | |
data WheelAction Source #
Constructors
| PauseWheel | |
| Scroll | |
Instances
| ToJSON WheelAction Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods toJSON :: WheelAction -> Value # toEncoding :: WheelAction -> Encoding # toJSONList :: [WheelAction] -> Value # toEncodingList :: [WheelAction] -> Encoding # omitField :: WheelAction -> Bool # | |
| Show WheelAction Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> WheelAction -> ShowS # show :: WheelAction -> String # showList :: [WheelAction] -> ShowS # | |
| Eq WheelAction Source # | |
Defined in WebDriverPreCore.SpecDefinition | |
Auxiliary Spec Types
newtype WindowHandle Source #
Instances
| Show WindowHandle Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> WindowHandle -> ShowS # show :: WindowHandle -> String # showList :: [WindowHandle] -> ShowS # | |
| Eq WindowHandle Source # | |
Defined in WebDriverPreCore.SpecDefinition | |
data WindowHandleSpec Source #
Constructors
| HandleSpec | |
Fields
| |
Instances
| FromJSON WindowHandleSpec Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods parseJSON :: Value -> Parser WindowHandleSpec # parseJSONList :: Value -> Parser [WindowHandleSpec] # | |
| ToJSON WindowHandleSpec Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods toJSON :: WindowHandleSpec -> Value # toEncoding :: WindowHandleSpec -> Encoding # toJSONList :: [WindowHandleSpec] -> Value # toEncodingList :: [WindowHandleSpec] -> Encoding # omitField :: WindowHandleSpec -> Bool # | |
| Show WindowHandleSpec Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> WindowHandleSpec -> ShowS # show :: WindowHandleSpec -> String # showList :: [WindowHandleSpec] -> ShowS # | |
| Eq WindowHandleSpec Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods (==) :: WindowHandleSpec -> WindowHandleSpec -> Bool # (/=) :: WindowHandleSpec -> WindowHandleSpec -> Bool # | |
Url as returned by W3Spec
The UrlPath type is a newtype wrapper around a list of Text segments representing a path.
e.g. the path: /session/session-no-1-2-3/window would be represented as: MkUrlPath ["session", "session-no-1-2-3", "window"]
data DriverStatus Source #
Constructors
| Ready | |
| Running | |
| ServiceError | |
Fields
| |
| Unknown | |
Fields
| |
Instances
| Show DriverStatus Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> DriverStatus -> ShowS # show :: DriverStatus -> String # showList :: [DriverStatus] -> ShowS # | |
| Eq DriverStatus Source # | |
Defined in WebDriverPreCore.SpecDefinition | |
data HttpResponse Source #
HttpResponse represents a WebDriver HTTP response.
Constructors
| MkHttpResponse | |
Fields
| |
Instances
| Show HttpResponse Source # | |
Defined in WebDriverPreCore.HttpResponse Methods showsPrec :: Int -> HttpResponse -> ShowS # show :: HttpResponse -> String # showList :: [HttpResponse] -> ShowS # | |
| Eq HttpResponse Source # | |
Defined in WebDriverPreCore.HttpResponse | |
| Ord HttpResponse Source # | |
Defined in WebDriverPreCore.HttpResponse Methods compare :: HttpResponse -> HttpResponse -> Ordering # (<) :: HttpResponse -> HttpResponse -> Bool # (<=) :: HttpResponse -> HttpResponse -> Bool # (>) :: HttpResponse -> HttpResponse -> Bool # (>=) :: HttpResponse -> HttpResponse -> Bool # max :: HttpResponse -> HttpResponse -> HttpResponse # min :: HttpResponse -> HttpResponse -> HttpResponse # | |
data FrameReference Source #
Constructors
| TopLevelFrame | |
| FrameNumber Word16 | |
| FrameElementId ElementId |
Instances
| Show FrameReference Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> FrameReference -> ShowS # show :: FrameReference -> String # showList :: [FrameReference] -> ShowS # | |
| Eq FrameReference Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods (==) :: FrameReference -> FrameReference -> Bool # (/=) :: FrameReference -> FrameReference -> Bool # | |
Timeouts in milliseconds spec
Instances
| FromJSON Timeouts Source # | |||||
Defined in WebDriverPreCore.Capabilities | |||||
| ToJSON Timeouts Source # | |||||
| Generic Timeouts Source # | |||||
Defined in WebDriverPreCore.Capabilities Associated Types
| |||||
| Show Timeouts Source # | |||||
| Eq Timeouts Source # | |||||
| type Rep Timeouts Source # | |||||
Defined in WebDriverPreCore.Capabilities type Rep Timeouts = D1 ('MetaData "Timeouts" "WebDriverPreCore.Capabilities" "webdriver-precore-0.0.0.1-inplace" 'False) (C1 ('MetaCons "MkTimeouts" 'PrefixI 'True) (S1 ('MetaSel ('Just "implicit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: (S1 ('MetaSel ('Just "pageLoad") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int)) :*: S1 ('MetaSel ('Just "script") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Int))))) | |||||
data WindowRect Source #
Instances
| ToJSON WindowRect Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods toJSON :: WindowRect -> Value # toEncoding :: WindowRect -> Encoding # toJSONList :: [WindowRect] -> Value # toEncodingList :: [WindowRect] -> Encoding # omitField :: WindowRect -> Bool # | |
| Show WindowRect Source # | |
Defined in WebDriverPreCore.SpecDefinition Methods showsPrec :: Int -> WindowRect -> ShowS # show :: WindowRect -> String # showList :: [WindowRect] -> ShowS # | |
| Eq WindowRect Source # | |
Defined in WebDriverPreCore.SpecDefinition | |