packages feed

sydtest-webdriver-0.0.0.0: test/Test/Syd/WebdriverSpec.hs

module Test.Syd.WebdriverSpec (spec) where

import Network.URI
import Test.Syd
import Test.Syd.Wai
import Test.Syd.Webdriver
import Test.Syd.Webdriver.App

spec :: Spec
spec = exampleAppSpec $ do
  it "can navigate to home" $
    openPath "/"

exampleAppSpec :: WebdriverSpec () -> Spec
exampleAppSpec = webdriverSpec $ \_ -> do
  portNumber <- applicationSetupFunc exampleApplication
  let uriStr = "http://127.0.0.1:" <> show portNumber
  case parseURI uriStr of
    Nothing -> liftIO $ expectationFailure $ "Failed to parse uri as string: " <> show uriStr
    Just uri -> pure (uri, ())