servant-0.16.0.1: A family of combinators for defining webservices APIs

Safe HaskellNone
LanguageHaskell2010

Servant.Test.ComprehensiveAPI

Description

This is a module containing an API with all API combinators. It is used for testing only (in particular, checking that instances exist for the core servant classes for each combinator).

Synopsis

Documentation

type RawEndpoint = "raw" :> Raw Source #

type EmptyEndpoint = "empty-api" :> EmptyAPI Source #

type ComprehensiveAPIWithoutStreamingOrRaw' endpoint = GET :<|> (("get-int" :> Get '[JSON] Int) :<|> (("capture" :> (Capture' '[Description "example description"] "foo" Int :> GET)) :<|> (("header" :> (Header "foo" Int :> GET)) :<|> (("header-lenient" :> (Header' '[Required, Lenient] "bar" Int :> GET)) :<|> (("http-version" :> (HttpVersion :> GET)) :<|> (("is-secure" :> (IsSecure :> GET)) :<|> (("param" :> (QueryParam "foo" Int :> GET)) :<|> (("param-lenient" :> (QueryParam' '[Required, Lenient] "bar" Int :> GET)) :<|> (("params" :> (QueryParams "foo" Int :> GET)) :<|> (("flag" :> (QueryFlag "foo" :> GET)) :<|> (("remote-host" :> (RemoteHost :> GET)) :<|> (("req-body" :> (ReqBody '[JSON] Int :> GET)) :<|> (("req-body-lenient" :> (ReqBody' '[Lenient] '[JSON] Int :> GET)) :<|> (("res-headers" :> Get '[JSON] (Headers '[Header "foo" Int] NoContent)) :<|> (("foo" :> GET) :<|> (("vault" :> (Vault :> GET)) :<|> (("post-no-content" :> Verb POST 204 '[JSON] NoContent) :<|> (("post-int" :> Verb POST 204 '[JSON] Int) :<|> (("named-context" :> WithNamedContext "foo" '[] GET) :<|> (("capture-all" :> (CaptureAll "foo" Int :> GET)) :<|> (("summary" :> (Summary "foo" :> GET)) :<|> (("description" :> (Description "foo" :> GET)) :<|> (("alternative" :> (("left" :> GET) :<|> ("right" :> GET))) :<|> endpoint))))))))))))))))))))))) Source #

:: API -> API, so we have linear structure of the API.