basen-bytestring 0.1.0.0 → 0.1.0.1
raw patch · 3 files changed
+26/−3 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- basen-bytestring.cabal +1/−1
- src/Data/ByteString/BaseN.hs +2/−2
- test/Properties.hs +23/−0
basen-bytestring.cabal view
@@ -1,5 +1,5 @@ name: basen-bytestring-version: 0.1.0.0+version: 0.1.0.1 description: Base-N ByteStrings for base{16,32,58,64} homepage: https://github.com/FilWisher/basen-bytestring#readme bug-reports: https://github.com/FilWisher/basen-bytestring/issues
src/Data/ByteString/BaseN.hs view
@@ -92,7 +92,7 @@ loop (sp `plusPtr` chunksize) (dp `plusPtr` advance) dfp <- Internal.mallocByteString dlen withForeignPtr dfp $ \dptr -> do- loop sptr dptr+ loop (sptr `plusPtr` soff) dptr return $ Internal.PS dfp 0 dlen byChunkErr :: @@ -115,4 +115,4 @@ Left err -> return $ Left err Right n -> loop (sp `plusPtr` chunksize) (dp `plusPtr` n) dfp <- Internal.mallocByteString dlen- fmap (Internal.PS dfp 0) <$> withForeignPtr dfp (loop sptr)+ fmap (Internal.PS dfp 0) <$> withForeignPtr dfp (loop $ sptr `plusPtr` soff)
test/Properties.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE OverloadedStrings #-} import Test.QuickCheck (Arbitrary(..), choose, forAll) import Test.QuickCheck.All (quickCheckAll)@@ -22,6 +23,28 @@ prop_base16_inverse bs = either (const False) (bs==) $ Base16.decode $ Base16.encode bs++inverse ::+ (B8.ByteString -> B8.ByteString) ->+ (B8.ByteString -> Either String B8.ByteString) ->+ B8.ByteString ->+ Bool+inverse encode decode bs =+ let+ enc = encode bs+ long = "--%" `B8.append` encode bs+ [pre,post] = B8.split '%' long+ in+ either (const False) (bs==) (decode post)++prop_base16_inverse_split :: B8.ByteString -> Bool+prop_base16_inverse_split = inverse Base16.encode Base16.decode++prop_base32_inverse_split :: B8.ByteString -> Bool+prop_base32_inverse_split = inverse Base32.encode Base32.decode++prop_base64_inverse_split :: B8.ByteString -> Bool+prop_base64_inverse_split = inverse Base64.encode Base64.decode prop_base32_inverse :: B8.ByteString -> Bool prop_base32_inverse bs =