git.iko.soy/typeable/bloodhound
on master help sign in
purdy. passing tests.
commit031bac3d7dacd2000d7978dafcb5eedb109fc24a authorChris Allen <cma@bitemyapp.com> dateSun 6 Apr 2014, 19:53 (13 years ago) parent842822a
1 file changed+8−14
tests/tests.hs+8−14
tests/tests.hs+8−14
@@ -1,4 +1,4 @@
1−{-# LANGUAGE DeriveGeneric, TemplateHaskell #-}
1+{-# LANGUAGE DeriveGeneric, OverloadedStrings, TemplateHaskell #-}
22
33module Main where
44
@@ -6,16 +6,13 @@ import Database.Bloodhound.Client
66import Data.Aeson
77import Data.DeriveTH
88import Data.Maybe (fromJust)
9−import Data.Time.Clock (UTCTime)
9+import Data.Time.Calendar (Day(..))
10+import Data.Time.Clock (secondsToDiffTime, UTCTime(..))
1011import Data.Text (Text)
1112import GHC.Generics (Generic)
1213import Network.HTTP.Conduit
1314import qualified Network.HTTP.Types.Status as NHTS
14−import System.Random
1515import Test.Hspec
16−import Test.QuickCheck
17−import Test.QuickCheck.Gen
18−import Test.QuickCheck.Instances
1916
2017
2118testServer = Server "http://localhost:9200"
@@ -31,13 +28,11 @@ data Tweet = Tweet { user :: Text
3128
3229instance ToJSON Tweet
3330instance FromJSON Tweet
34−$(derive makeArbitrary ''Tweet)
3531
36−newTweet :: IO Tweet
37−newTweet = do
38− g <- newStdGen
39− let seed = head (take 1 $ randoms g)
40− return (unGen arbitrary (mkStdGen seed) 100)
32+exampleTweet = Tweet { user = "bitemyapp"
33+ , postDate = UTCTime (ModifiedJulianDay 55000)
34+ (secondsToDiffTime 10)
35+ , message = "Use haskell!" }
4136
4237main :: IO ()
4338main = hspec $ do
@@ -51,11 +46,10 @@ main = hspec $ do
5146 validateStatus deleteResp 200
5247 describe "document API" $ do
5348 it "indexes, gets, and then deletes the generated document" $ do
54− tweet <- newTweet
49+ let tweet = exampleTweet
5550 let encoded = encode tweet
5651 created <- createExampleIndex
5752 docCreated <- indexDocument (Server "http://localhost:9200") "twitter" "tweet" tweet "1"
58−
5953 docInserted <- getDocument (Server "http://localhost:9200") "twitter" "tweet" "1"
6054 let newTweet = decode (responseBody docInserted) :: Maybe (EsResult Tweet)
6155 deleted <- deleteExampleIndex