packages feed

aws-sdk-text-converter 0.1.0.0 → 0.2.0.0

raw patch · 4 files changed

+16/−3 lines, 4 files

Files

Cloud/AWS/Lib/FromText.hs view
@@ -90,6 +90,10 @@       where         fmt = "%FT%T" +instance FromText () where+    fromText _ = return ()+    fromNamedText _ = maybe (return ()) fromText+ deriveFromText :: String -> [String] -> DecsQ deriveFromText dstr strs = do     ctrs <- map (\(NormalC name _) -> name) <$> cons
Cloud/AWS/Lib/ToText.hs view
@@ -5,10 +5,10 @@     ) where  import Data.ByteString (ByteString)-import qualified Data.ByteString.Char8 as BC import Data.IP (IPv4, AddrRange) import Data.Text (Text) import qualified Data.Text as T+import qualified Data.Text.Encoding as T import Data.Time (UTCTime) import qualified Data.Time as Time import System.Locale (defaultTimeLocale)@@ -22,7 +22,7 @@     toText t = t  instance ToText ByteString where-    toText = T.pack . BC.unpack+    toText = T.decodeUtf8  instance ToText Bool where     toText True  = "true"
aws-sdk-text-converter.cabal view
@@ -1,5 +1,5 @@ name:                aws-sdk-text-converter-version:             0.1.0.0+version:             0.2.0.0 synopsis:            The text converter for aws-sdk. description:         The text converter for aws-sdk. license:             BSD3
test/Spec.hs view
@@ -3,6 +3,7 @@  import Control.Applicative import Data.IP+import Data.Text import Data.Time import Test.Hspec import Test.HUnit@@ -30,12 +31,18 @@ instance Arbitrary (AddrRange IPv4) where     arbitrary = makeAddrRange <$> arbitrary <*> choose (0, 32) +instance Arbitrary Text where+    arbitrary = pack <$> arbitrary+ prop_mclass :: (Eq a, FromText a, ToText a) => a -> Bool prop_mclass a = fromText (toText a) == Just (Just a)  testNothing :: IO () testNothing = (fromText "" :: Maybe Int) @=? Nothing +testConvertNothingToUnit :: IO ()+testConvertNothingToUnit = fromNamedText "unit" Nothing @=? Just ()+ data A = B | C deriving (Eq, Show)  instance ToText A where@@ -60,3 +67,5 @@         prop "Maybe Int" (prop_mclass :: Int -> Bool)         it "convert Nothing" testNothing         prop "deriveFromText" (prop_class :: A -> Bool)+        prop "Unit" (\t -> fromText t == Just ())+        it "convert Nothing to Unit" testConvertNothingToUnit