From efc54d7c09e4e018c3729f2144a7fade49360f56 Mon Sep 17 00:00:00 2001 From: Sam T Date: Thu, 26 Sep 2013 21:36:32 +0400 Subject: Ignore error if character is out of base32 alphabet 3.3. Interpretation of Non-Alphabet Characters in Encoded Data --- tests/Data/ByteString/Base32Spec.hs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/Data/ByteString/Base32Spec.hs b/tests/Data/ByteString/Base32Spec.hs index 3c646e2..ff3e13c 100644 --- a/tests/Data/ByteString/Base32Spec.hs +++ b/tests/Data/ByteString/Base32Spec.hs @@ -2,6 +2,7 @@ module Data.ByteString.Base32Spec (spec) where import Control.Applicative +import Control.Exception import Data.ByteString as BS import Data.ByteString.Internal as BS import Data.ByteString.Base32 as Base32 @@ -43,4 +44,8 @@ spec = do it "inverse for encode" $ property $ \bs -> decode (encode bs) == bs + it "fail gracefully if encoded data contains non alphabet chars" $ do + evaluate (decode "0=======") `shouldThrow` anyErrorCall + evaluate (decode "AAAAAAAA0=======") `shouldThrow` anyErrorCall + -- describe "decodeLenient" $ do -- cgit v1.2.3