@@ -135,6 +135,12 @@ prop_v5Valid = label "V5 valid" v5Valid
135 where v5Valid :: [Word8] -> Bool
135 where v5Valid :: [Word8] -> Bool
136 v5Valid = isValidVersion 5 . U5.generateNamed U5.namespaceDNS
136 v5Valid = isValidVersion 5 . U5.generateNamed U5.namespaceDNS
138+prop_readShowRoundTrip :: Property
139+prop_readShowRoundTrip = label "Read/Show round-trip" prop
140+ where -- we're using 'Maybe UUID' to add a bit of
141+ -- real-world complexity.
142+ prop :: U.UUID -> Bool
143+ prop uuid = read (show (Just uuid)) == Just uuid
139main :: IO ()
145main :: IO ()
@@ -149,6 +155,7 @@ main = do
150 mapM_ quickCheck $ [
156 mapM_ quickCheck $ [
151 prop_stringRoundTrip,
157 prop_stringRoundTrip,
158+ prop_readShowRoundTrip,
152 prop_byteStringRoundTrip,
159 prop_byteStringRoundTrip,
153 prop_stringLength,
160 prop_stringLength,
154 prop_byteStringLength,
161 prop_byteStringLength,