curl-runnings-0.12.0: A framework for declaratively writing curl based API tests

Safe HaskellNone
LanguageHaskell2010

Testing.CurlRunnings.Internal.Headers

Description

Module defining the Header and Headers types and a parser with a FromJSON instance for the Headers type.

Headers are parsed from a semi-colon separated sequence of key:value pairs. Some examples:

"key: value"
"key1: value1; key2: value2"

Keys can be any sequence of ASCII characters excluding : and must not be all whitespace. For example:

" : value"

is invalid.

Values can be any sequence of ASCII characters excluding ';' and may be all whitespace. For example:

"key : "

is valid.

Synopsis

Documentation

data Header Source #

A representation of a single header

Constructors

Header Text Text 
Instances
Eq Header Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

Methods

(==) :: Header -> Header -> Bool #

(/=) :: Header -> Header -> Bool #

Show Header Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

Generic Header Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

Associated Types

type Rep Header :: Type -> Type #

Methods

from :: Header -> Rep Header x #

to :: Rep Header x -> Header #

ToJSON Header Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

type Rep Header Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

type Rep Header = D1 (MetaData "Header" "Testing.CurlRunnings.Internal.Headers" "curl-runnings-0.12.0-31HDSFfpJZkGQWS71E6O0T" False) (C1 (MetaCons "Header" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

newtype Headers Source #

Simple container for a list of headers, useful for a vehicle for defining a fromJSON

Constructors

HeaderSet [Header] 
Instances
Eq Headers Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

Methods

(==) :: Headers -> Headers -> Bool #

(/=) :: Headers -> Headers -> Bool #

Show Headers Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

Generic Headers Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

Associated Types

type Rep Headers :: Type -> Type #

Methods

from :: Headers -> Rep Headers x #

to :: Rep Headers x -> Headers #

ToJSON Headers Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

FromJSON Headers Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

type Rep Headers Source # 
Instance details

Defined in Testing.CurlRunnings.Internal.Headers

type Rep Headers = D1 (MetaData "Headers" "Testing.CurlRunnings.Internal.Headers" "curl-runnings-0.12.0-31HDSFfpJZkGQWS71E6O0T" True) (C1 (MetaCons "HeaderSet" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Header])))

parseHeaders :: Text -> Either Text Headers Source #

Given a header text, attempt to parse it into Headers.