Janitoring

This commit is contained in:
Julian K. Arni 2015-09-23 18:26:05 +02:00
parent b50e9128c1
commit 965063171b
12 changed files with 38 additions and 10 deletions

View file

@ -65,6 +65,7 @@ executable greet-docs
test-suite spec test-suite spec
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0
main-is: Spec.hs main-is: Spec.hs
other-modules: Servant.DocsSpec
hs-source-dirs: test hs-source-dirs: test
ghc-options: -Wall ghc-options: -Wall
build-depends: build-depends:

View file

@ -23,19 +23,21 @@ module Servant.Docs.Internal where
import Control.Applicative import Control.Applicative
import Control.Arrow (second) import Control.Arrow (second)
import Control.Lens hiding (List, to, from) import Control.Lens (makeLenses, over, traversed, (%~),
(&), (.~), (<>~), (^.), _1, _2,
_last, (|>))
import qualified Control.Monad.Omega as Omega import qualified Control.Monad.Omega as Omega
import Data.ByteString.Conversion (ToByteString, toByteString) import Data.ByteString.Conversion (ToByteString, toByteString)
import Data.ByteString.Lazy.Char8 (ByteString) import Data.ByteString.Lazy.Char8 (ByteString)
import qualified Data.CaseInsensitive as CI import qualified Data.CaseInsensitive as CI
import Data.Hashable import Data.Hashable (Hashable)
import Data.HashMap.Strict (HashMap) import Data.HashMap.Strict (HashMap)
import Data.List import Data.List
import Data.Maybe import Data.Maybe
import Data.Monoid import Data.Monoid
import Data.Ord (comparing) import Data.Ord (comparing)
import Data.Proxy import Data.Proxy (Proxy(Proxy))
import Data.String.Conversions import Data.String.Conversions (cs)
import Data.Text (Text, pack, unpack) import Data.Text (Text, pack, unpack)
import GHC.Exts (Constraint) import GHC.Exts (Constraint)
import GHC.Generics import GHC.Generics
@ -494,9 +496,9 @@ sampleByteStrings
-> Proxy a -> Proxy a
-> [(Text, M.MediaType, ByteString)] -> [(Text, M.MediaType, ByteString)]
sampleByteStrings ctypes@Proxy Proxy = sampleByteStrings ctypes@Proxy Proxy =
let samples = toSamples (Proxy :: Proxy a) let samples' = toSamples (Proxy :: Proxy a)
enc (t, s) = uncurry (t,,) <$> allMimeRender ctypes s enc (t, s) = uncurry (t,,) <$> allMimeRender ctypes s
in concatMap enc samples in concatMap enc samples'
-- | Generate a list of 'MediaType' values describing the content types -- | Generate a list of 'MediaType' values describing the content types
-- accepted by an API component. -- accepted by an API component.
@ -640,10 +642,10 @@ markdown api = unlines $
rqbodyStr :: [M.MediaType] -> [(M.MediaType, ByteString)]-> [String] rqbodyStr :: [M.MediaType] -> [(M.MediaType, ByteString)]-> [String]
rqbodyStr [] [] = [] rqbodyStr [] [] = []
rqbodyStr types samples = rqbodyStr types s =
["#### Request:", ""] ["#### Request:", ""]
<> formatTypes types <> formatTypes types
<> concatMap formatBody samples <> concatMap formatBody s
formatTypes [] = [] formatTypes [] = []
formatTypes ts = ["- Supported content types are:", ""] formatTypes ts = ["- Supported content types are:", ""]

View file

@ -5,6 +5,7 @@
{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
import Data.Aeson import Data.Aeson
import Data.ByteString (ByteString) import Data.ByteString (ByteString)
import Data.Text (Text) import Data.Text (Text)

View file

@ -2,6 +2,8 @@
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
import Control.Applicative import Control.Applicative
import Control.Monad import Control.Monad
import Control.Monad.IO.Class import Control.Monad.IO.Class

View file

@ -20,6 +20,7 @@ source-repository head
executable tutorial executable tutorial
main-is: tutorial.hs main-is: tutorial.hs
other-modules: T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 other-modules: T1, T2, T3, T4, T5, T6, T7, T8, T9, T10
ghc-options: -Wall -fno-warn-unused-binds -fno-warn-name-shadowing
build-depends: build-depends:
aeson >= 0.8 aeson >= 0.8
, base >= 4.7 && < 5 , base >= 4.7 && < 5
@ -45,8 +46,10 @@ executable tutorial
executable t8-main executable t8-main
main-is: t8-main.hs main-is: t8-main.hs
other-modules: T3, T8
hs-source-dirs: tutorial hs-source-dirs: tutorial
default-language: Haskell2010 default-language: Haskell2010
ghc-options: -Wall -fno-warn-unused-binds -fno-warn-name-shadowing
build-depends: build-depends:
aeson aeson
, base >= 4.7 && < 5 , base >= 4.7 && < 5
@ -101,6 +104,7 @@ executable auth-combinator
executable socket-io-chat executable socket-io-chat
main-is: socket-io-chat.hs main-is: socket-io-chat.hs
other-modules: Chat
build-depends: build-depends:
aeson >= 0.8 aeson >= 0.8
, base >= 4.7 && < 5 , base >= 4.7 && < 5

View file

@ -2,6 +2,7 @@
{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
module T3 where module T3 where
import Control.Monad.Trans.Except import Control.Monad.Trans.Except

View file

@ -77,6 +77,9 @@ test-suite spec
hs-source-dirs: test hs-source-dirs: test
ghc-options: -Wall ghc-options: -Wall
main-is: Spec.hs main-is: Spec.hs
other-modules:
Servant.JSSpec
Servant.JSSpec.CustomHeaders
build-depends: base build-depends: base
, hspec >= 2.1.8 , hspec >= 2.1.8
, hspec-expectations , hspec-expectations

View file

@ -1,3 +1,4 @@
<<<<<<< HEAD
module Servant.JS.Internal module Servant.JS.Internal
( JavaScriptGenerator ( JavaScriptGenerator
, CommonGeneratorOptions(..) , CommonGeneratorOptions(..)
@ -29,7 +30,7 @@ module Servant.JS.Internal
, Get , Get
, Raw , Raw
, Header , Header
) where ) where
import Control.Lens hiding (List) import Control.Lens hiding (List)
import qualified Data.CharSet as Set import qualified Data.CharSet as Set

View file

@ -5,6 +5,7 @@
{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
-- | -- |
-- Module : Servant.Mock -- Module : Servant.Mock
-- Copyright : 2015 Alp Mestanogullari -- Copyright : 2015 Alp Mestanogullari
@ -165,7 +166,7 @@ instance (Arbitrary a, AllCTRender ctypes a) => HasMock (Put ctypes a) where
mock _ = mockArbitrary mock _ = mockArbitrary
instance HasMock Raw where instance HasMock Raw where
mock _ = \req respond -> do mock _ = \_req respond -> do
bdy <- genBody bdy <- genBody
respond $ responseLBS status200 [] bdy respond $ responseLBS status200 [] bdy

View file

@ -91,6 +91,11 @@ test-suite spec
default-language: Haskell2010 default-language: Haskell2010
hs-source-dirs: test hs-source-dirs: test
main-is: Spec.hs main-is: Spec.hs
other-modules:
Servant.Server.ErrorSpec
Servant.Server.Internal.EnterSpec
Servant.ServerSpec
Servant.Utils.StaticFilesSpec
build-depends: build-depends:
base == 4.* base == 4.*
, aeson , aeson

View file

@ -90,6 +90,11 @@ test-suite spec
default-language: Haskell2010 default-language: Haskell2010
hs-source-dirs: test hs-source-dirs: test
main-is: Spec.hs main-is: Spec.hs
other-modules:
Servant.API.ContentTypesSpec
Servant.API.ResponseHeadersSpec
Servant.Common.TextSpec
Servant.Utils.LinksSpec
build-depends: build-depends:
base == 4.* base == 4.*
, aeson , aeson

View file

@ -1,6 +1,8 @@
flags: flags:
servant-js: servant-js:
example: false example: false
ghc-options:
"*": -Wall
packages: packages:
- servant/ - servant/
- servant-blaze/ - servant-blaze/