@@ -33,6 +33,7 @@ import Data.Swagger.Declare
33import Test.Hspec
33import Test.Hspec
34import Test.Hspec.QuickCheck
34import Test.Hspec.QuickCheck
35import Test.QuickCheck
35import Test.QuickCheck
36+import Test.QuickCheck.Instances ()
37shouldValidate :: (ToJSON a, ToSchema a) => Proxy a -> a -> Bool
38shouldValidate :: (ToJSON a, ToSchema a) => Proxy a -> a -> Bool
38shouldValidate _ x = validateToJSON x == []
39shouldValidate _ x = validateToJSON x == []
@@ -230,6 +231,10 @@ invalidButtonImagesToJSON = genericToJSON defaultOptions
230instance Arbitrary ButtonImages where
231instance Arbitrary ButtonImages where
231 arbitrary = ButtonImages <$> arbitrary
232 arbitrary = ButtonImages <$> arbitrary
234+instance Eq ZonedTime where
235+ ZonedTime t (TimeZone x _ _) == ZonedTime t' (TimeZone y _ _) = t == t' && x == y
233-- Arbitrary instances for common types
238-- Arbitrary instances for common types
235instance (Eq k, Hashable k, Arbitrary k, Arbitrary v) => Arbitrary (HashMap k v) where
240instance (Eq k, Hashable k, Arbitrary k, Arbitrary v) => Arbitrary (HashMap k v) where
@@ -252,9 +257,6 @@ instance Arbitrary LocalTime where
252 <$> arbitrary
257 <$> arbitrary
253 <*> liftA3 TimeOfDay (choose (0, 23)) (choose (0, 59)) (fromInteger <$> choose (0, 60))
258 <*> liftA3 TimeOfDay (choose (0, 23)) (choose (0, 59)) (fromInteger <$> choose (0, 60))
255−instance Eq ZonedTime where
256− ZonedTime t (TimeZone x _ _) == ZonedTime t' (TimeZone y _ _) = t == t' && x == y
258instance Arbitrary ZonedTime where
260instance Arbitrary ZonedTime where
259 arbitrary = ZonedTime
261 arbitrary = ZonedTime
260 <$> arbitrary
262 <$> arbitrary
@@ -272,3 +274,5 @@ instance Arbitrary a => Arbitrary (NonEmpty a) where
272 arbitrary = liftA2 (:|) arbitrary arbitrary
274 arbitrary = liftA2 (:|) arbitrary arbitrary
273 shrink (x :| xs) = mapMaybe nonEmpty (shrink (x:xs))
275 shrink (x :| xs) = mapMaybe nonEmpty (shrink (x:xs))