packages feed

fakedata-0.5.0: test/BookSpec.hs

{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE OverloadedStrings #-}

module BookSpec where

import Control.Monad.Catch
import Control.Monad.IO.Class
import qualified Data.Map as M
import Data.Text hiding (all, map)
import qualified Data.Text as T
import qualified Data.Text.IO as TIO
import Data.Vector (Vector)
import qualified Data.Vector as V
import Faker
import Faker.Book
import Test.Hspec

isText :: Text -> Bool
isText x = T.length x >= 1

spec :: Spec
spec = do
  describe "Faker Generate for Book" $ do
    it "title" $ do
      item <- generate title
      item `shouldSatisfy` isText
    it "Author" $ do
      item <- generate author
      item `shouldSatisfy` isText
    it "Publisher" $ do
      item <- generate publisher
      item `shouldSatisfy` isText
    it "Genre" $ do
      item <- generate genre
      item `shouldSatisfy` isText