packages feed

fakedata 0.2.0 → 0.2.1

raw patch · 9 files changed

+102/−13 lines, 9 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Faker.Internal: randomUnresolvedVecWithoutVector :: (MonadThrow m, MonadIO m) => FakerSettings -> (FakerSettings -> m (Unresolved Text)) -> (FakerSettings -> Text -> m Text) -> m Text
+ Faker.Internal: unresolvedResolverWithoutVector :: (MonadThrow m, MonadIO m) => (FakerSettings -> m (Unresolved Text)) -> (FakerSettings -> Text -> m Text) -> FakerSettings -> m Text
- Faker.Provider.Book: bookAuthorProvider :: (MonadThrow m, MonadIO m) => FakerSettings -> m (Unresolved (Vector Text))
+ Faker.Provider.Book: bookAuthorProvider :: (MonadThrow m, MonadIO m) => FakerSettings -> m (Unresolved Text)

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ # Changelog for fakedata +## 0.2.1++* Fix bug in Book module+ ## 0.2.0  * Add sicCode function in Company module
fakedata.cabal view
@@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: 4cc038591118fb6403c9b26f0c62caa51c0920e94f541ff52d110aba4772ea4a+-- hash: a94da93c764c9d1455223f44b3b263abe47e9505f0c4b28f0ea2319a110ae01f  name:           fakedata-version:        0.2.0+version:        0.2.1 synopsis:       Library for producing fake data description:    Please see the README on GitHub at <https://github.com/psibi/fakedata#readme> category:       Random, Fake, FakeData@@ -546,12 +546,14 @@       AddressSpec       AppSpec       BeerSpec+      BookSpec       BossaNovaSpec       CoffeeSpec       CombinatorsSpec       FakerSpec       GamesSpec       InternalSpec+      NameSpec       OtherSpec       ProviderSpec       Paths_fakedata
src/Faker/Book.hs view
@@ -10,7 +10,9 @@  $(generateFakeField "book" "title") -$(generateFakeFieldUnresolved "book" "author")+author :: Fake Text+author =+  Fake (unresolvedResolverWithoutVector bookAuthorProvider resolveBookText)  $(generateFakeField "book" "publisher") 
src/Faker/Internal.hs view
@@ -60,6 +60,16 @@   items <- provider settings   resolveUnresolved settings items resolverFn +randomUnresolvedVecWithoutVector ::+     (MonadThrow m, MonadIO m)+  => FakerSettings+  -> (FakerSettings -> m (Unresolved Text))+  -> (FakerSettings -> Text -> m Text)+  -> m Text+randomUnresolvedVecWithoutVector settings provider resolverFn = do+  items <- provider settings+  resolveUnresolved settings (sequenceA $ pure items) resolverFn+ resolveUnresolved ::      (MonadThrow m, MonadIO m)   => FakerSettings@@ -206,6 +216,14 @@   -> (FakerSettings -> m Text) unresolvedResolver provider resolverFn =   \settings -> randomUnresolvedVec settings provider resolverFn++unresolvedResolverWithoutVector ::+     (MonadThrow m, MonadIO m)+  => (FakerSettings -> m (Unresolved Text))+  -> (FakerSettings -> Text -> m Text)+  -> (FakerSettings -> m Text)+unresolvedResolverWithoutVector provider resolverFn =+  \settings -> randomUnresolvedVecWithoutVector settings provider resolverFn  uprStr :: String -> String uprStr [] = []
src/Faker/Provider/Book.hs view
@@ -13,7 +13,7 @@ import Data.Yaml import Faker import Faker.Internal-import Faker.Provider.Name (nameProvider, resolveNameText)+import Faker.Provider.Name (nameProvider, resolveNameField, resolveNameText) import Faker.Provider.TH import Language.Haskell.TH @@ -49,7 +49,9 @@  $(genParserUnresolved "book" "author") -$(genProviderUnresolved "book" "author")+bookAuthorProvider ::+     (MonadThrow m, MonadIO m) => FakerSettings -> m (Unresolved Text)+bookAuthorProvider settings = fetchData settings Book parseBookAuthorUnresolved  $(genParser "book" "publisher") 
+ test/BookSpec.hs view
@@ -0,0 +1,36 @@+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE OverloadedStrings #-}++module BookSpec where++import Config+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
test/FakerSpec.hs view
@@ -161,9 +161,7 @@     describe "Finance" $ do       it "visa" $ do         item <- generate visa-        print item         item `shouldSatisfy` isText       it "mastercard" $ do         item <- generate mastercard-        print item         item `shouldSatisfy` isText
+ test/NameSpec.hs view
@@ -0,0 +1,27 @@+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE OverloadedStrings #-}++module NameSpec where++import Config+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.Name+import Test.Hspec++isText :: Text -> Bool+isText x = T.length x >= 1++spec :: Spec+spec = do+  describe "Faker Generate for Name" $ do+    it "name" $ do+      item <- generate name+      item `shouldSatisfy` isText
test/OtherSpec.hs view
@@ -34,9 +34,9 @@           (setLocale "en-PAK" defaultFakerSettings)           nameWithMiddle       (ctries) `shouldBe` "Zia Ash Ash"-    -- it "name with middle - au" $ do-    --   ctries <--    --     generateWithSettings-    --       (setLocale "en-AU" defaultFakerSettings)-    --       nameWithMiddle-    --   (ctries) `shouldBe` "Zia Ash Ash"+    it "name with middle - au" $ do+      ctries <-+        generateWithSettings+          (setLocale "en-AU" defaultFakerSettings)+          nameWithMiddle+      (ctries) `shouldBe` "Georgia Grady Grady"