roboservant-0.1.0.4: Automatic session-aware servant testing
Safe HaskellNone
LanguageHaskell2010

Roboservant.Client

Documentation

class ToReifiedClientApi (api :: [Type]) where Source #

Instances

Instances details
ToReifiedClientApi ('[] :: [Type]) Source # 
Instance details

Defined in Roboservant.Client

Methods

toReifiedClientApi :: ClientBundled ('[] :: [Type]) -> Proxy ('[] :: [Type]) -> ClientEnv -> ReifiedApi Source #

(GenericServant routes (AsClientT ClientM), FlattenClient (ToServantApi routes), Client ClientM (ToServantApi routes) ~ ToServant routes (AsClientT ClientM), ToReifiedClientApi (Endpoints (ToServantApi routes)), ToReifiedClientApi endpoints) => ToReifiedClientApi (NamedRoutes routes ': endpoints) Source # 
Instance details

Defined in Roboservant.Client

Methods

toReifiedClientApi :: ClientBundled (NamedRoutes routes ': endpoints) -> Proxy (NamedRoutes routes ': endpoints) -> ClientEnv -> ReifiedApi Source #

(NormalizeFunction (Client ClientM endpoint), Normal (Client ClientM endpoint) ~ Curried (EndpointArgs endpoint) (ReaderT ClientEnv IO (Either InteractionError (NonEmpty (Dynamic, Int)))), ToReifiedClientApi endpoints, RecordCurry' (EndpointArgs endpoint), ToReifiedEndpoint endpoint) => ToReifiedClientApi (endpoint ': endpoints) Source # 
Instance details

Defined in Roboservant.Client

Methods

toReifiedClientApi :: ClientBundled (endpoint ': endpoints) -> Proxy (endpoint ': endpoints) -> ClientEnv -> ReifiedApi Source #

data ClientBundled (endpoints :: [Type]) where Source #

Constructors

AClientEndpoint :: forall endpoint (endpoints1 :: [Type]). Client ClientM endpoint -> ClientBundled endpoints1 -> ClientBundled (endpoint ': endpoints1) 
NoClientEndpoints :: ClientBundled ('[] :: [Type]) 

class FlattenClient api where Source #

Instances

Instances details
FlattenClient (NamedRoutes routes) Source # 
Instance details

Defined in Roboservant.Client

(FlattenClient api, Endpoints endpoint ~ '[endpoint]) => FlattenClient (endpoint :<|> api) Source # 
Instance details

Defined in Roboservant.Client

Methods

flattenClient :: Client ClientM (endpoint :<|> api) -> ClientBundled (Endpoints (endpoint :<|> api)) Source #

Endpoints api ~ '[api] => FlattenClient (x :> api) Source # 
Instance details

Defined in Roboservant.Client

FlattenClient (Verb method statusCode contentTypes responseType) Source # 
Instance details

Defined in Roboservant.Client

Methods

flattenClient :: Client ClientM (Verb method statusCode contentTypes responseType) -> ClientBundled (Endpoints (Verb method statusCode contentTypes responseType)) Source #

mapCurried :: forall (ts :: [Type]) a b. RecordCurry' ts => (a -> b) -> Curried ts a -> Curried ts b Source #

Orphan instances

(Typeable x, Hashable x, Breakdown x) => NormalizeFunction (ClientM x) Source # 
Instance details

Associated Types

type Normal (ClientM x) 
Instance details

Defined in Roboservant.Client

Methods

normalize :: ClientM x -> Normal (ClientM x) Source #