fakedata-0.5.0: test/OtherSpec.hs
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE OverloadedStrings #-}
module OtherSpec 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 hiding (defaultFakerSettings)
import qualified Faker.App as AP
import qualified Faker.Educator as ED
import Faker.Name
import Faker.Source
import qualified Faker.WorldCup as WC
import Test.Hspec
import TestImport
isText :: Text -> Bool
isText x = T.length x >= 1
spec :: Spec
spec = do
describe "Faker Generate" $ do
it "ruby code" $ do
hworld <- generate helloWorldRuby
hworld `shouldSatisfy` isText
it "name with middle - ee" $ do
ctries <-
generateWithSettings
(setLocale "ee" defaultFakerSettings)
nameWithMiddle
(ctries) `shouldBe` "Kajar Vaino Kõiv"
it "name with middle - pak" $ do
ctries <-
generateWithSettings
(setLocale "en-PAK" defaultFakerSettings)
nameWithMiddle
(ctries) `shouldBe` "Mian Khan Nambardar"
it "name with middle - au" $ do
ctries <-
generateWithSettings
(setLocale "en-AU" defaultFakerSettings)
nameWithMiddle
(ctries) `shouldBe` "Sarah Kirlin Jenkins"
it "group A - WC" $ do
ga <- generate WC.groupsGroupA
ga `shouldBe` "Russia"
it "courseNumber - Edu" $ do
ga <- generate ED.tertiaryCourseNumber
ga `shouldBe` "215"
it "App author" $ do
ga <-
generateWithSettings (setDeterministic defaultFakerSettings) AP.author
ga `shouldBe` "Steuber, Donnelly and Goldner"