Hoogle Search

Within LTS Haskell 24.4 (ghc-9.10.2)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. yesodE2ESpec' :: URI -> YesodSpec (E2E site) -> TestDef '[Manager] ()

    sydtest-yesod Test.Syd.Yesod

    Like yesodE2ESpec, but doesn't set up the Manager for you. If you are running the end-to-end test against a server that uses https://, make sure to use a TLS-enabled Manager. You can do this using beforeAll newTlsManager.

  2. yesodSpec :: YesodDispatch site => site -> YesodSpec site -> Spec

    sydtest-yesod Test.Syd.Yesod

    Run a test suite using the given site. If your site contains any resources that need to be set up, you probably want to be using one of the following functions instead. Example usage with a minimal yesod App:

    {-# LANGUAGE MultiParamTypeClasses #-}
    {-# LANGUAGE OverloadedStrings     #-}
    {-# LANGUAGE QuasiQuotes           #-}
    {-# LANGUAGE TemplateHaskell       #-}
    {-# LANGUAGE TypeFamilies          #-}
    
    module Minimal where
    
    import Yesod
    import Test.Syd
    
    data App = App -- | Empty App type
    
    mkYesod "App" [parseRoutes|
    / HomeR GET
    |]
    
    instance Yesod App
    
    getHomeR :: Handler Html
    getHomeR = "Hello, world!"
    
    main :: IO ()
    main = Yesod.warp 3000 App
    
    testMain :: IO ()
    testMain = sydTest spec
    
    spec :: Spec
    spec = yesodSpec App $ do
    it "returns 200 on the homepage" $ do
    get HomeR
    statusIs 200
    
    This function exists for backward compatibility with yesod-test.

  3. yesodSpecWithSiteGenerator :: YesodDispatch site => IO site -> YesodSpec site -> Spec

    sydtest-yesod Test.Syd.Yesod

    Run a test suite using the given site generator. If your site contains any resources that you will want to have set up beforhand, you will probably want to use yesodSpecWithSiteGeneratorAndArgument or yesodSpecWithSiteSupplierWith instead. Example usage with a yesod App that contains a secret key that is generated at startup but not used during tests:

    data Key = Key -- The implementation of the actual key is omitted here for brevity.
    genKey :: IO Key
    genKey = pure Key
    
    data App = App { appSecretKey :: Key }
    
    genApp :: IO App
    genApp = App <$> genKey
    
    main :: IO ()
    main = sydTest spec
    
    spec :: Spec
    spec = yesodSpecWithSiteGenerator genApp $ do
    it "returns 200 on the homepage" $ do
    get HomeR
    statusIs 200
    
    This function exists for backward compatibility with yesod-test.

  4. yesodSpecWithSiteGeneratorAndArgument :: YesodDispatch site => (a -> IO site) -> YesodSpec site -> SpecWith a

    sydtest-yesod Test.Syd.Yesod

    Run a test suite using the given site generator which uses an inner resource. If your site contains any resources that you need to set up using a withX function, you will want to use yesodSpecWithSiteSupplier instead. This function exists for backward compatibility with yesod-test.

  5. yesodSpecWithSiteSetupFunc :: forall site (outers :: [Type]) . YesodDispatch site => (Manager -> SetupFunc site) -> TestDef (Manager ': outers) (YesodClient site) -> TestDef (Manager ': outers) ()

    sydtest-yesod Test.Syd.Yesod

    Using a function that supplies a site, using a SetupFunc This function assumed that you've already set up the Manager beforehand using something like managerSpec.

  6. yesodSpecWithSiteSetupFunc' :: forall site inner (outers :: [Type]) . YesodDispatch site => (Manager -> inner -> SetupFunc site) -> TestDef (Manager ': outers) (YesodClient site) -> TestDef (Manager ': outers) inner

    sydtest-yesod Test.Syd.Yesod

    Using a function that supplies a site, using a SetupFunc. This function assumed that you've already set up the Manager beforehand using something like managerSpec.

  7. yesodSpecWithSiteSupplier :: YesodDispatch site => (forall r . () => (site -> IO r) -> IO r) -> YesodSpec site -> Spec

    sydtest-yesod Test.Syd.Yesod

    Using a function that supplies a site, run a test suite. Example usage with a yesod App that contains an sqlite database connection. See 'sydtest-persistent-sqlite'.

    import Test.Syd.Persistent.Sqlite
    
    data App = App { appConnectionPool :: ConnectionPool }
    
    main :: IO ()
    main = sydTest spec
    
    appSupplier :: (App -> IO r) -> IO r
    appSupplier func =
    withConnectionPool myMigration $ \pool ->
    func $ App { appConnectionPool = pool}
    
    spec :: Spec
    spec = yesodSpecWithSiteSupplier appSupplier $ do
    it "returns 200 on the homepage" $ do
    get HomeR
    statusIs 200
    

  8. yesodSpecWithSiteSupplierWith :: YesodDispatch site => (forall r . () => (site -> IO r) -> inner -> IO r) -> YesodSpec site -> SpecWith inner

    sydtest-yesod Test.Syd.Yesod

    Using a function that supplies a site, based on an inner resource, run a test suite.

  9. yesodClientManager :: YesodClient site -> !Manager

    sydtest-yesod Test.Syd.Yesod.Client

    The Manager to make the requests

  10. yesodClientSite :: YesodClient site -> !site

    sydtest-yesod Test.Syd.Yesod.Client

    The site itself

Page 11 of many | Previous | Next