gopro-plus 0.6.6.0 → 0.6.6.3
raw patch · 2 files changed
+22/−8 lines, 2 filesPVP: minor bump suggested
API additions: PVP suggests at least a minor version bump
API changes (from Hackage documentation)
+ GoPro.Plus.Arbitrary: aCamera :: Gen String
+ GoPro.Plus.Arbitrary: genID :: Gen MediumID
Files
- gopro-plus.cabal +1/−1
- src/GoPro/Plus/Arbitrary.hs +21/−7
gopro-plus.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: gopro-plus-version: 0.6.6.0+version: 0.6.6.3 synopsis: GoPro Plus Client API. description: Please see the README on GitHub at <https://github.com/dustin/gopro-plus#readme> category: Web
src/GoPro/Plus/Arbitrary.hs view
@@ -16,7 +16,7 @@ import qualified Data.Text as T import Generic.Random (genericArbitrary, uniform) import Test.QuickCheck (Arbitrary (..), Gen, NonNegative (..), arbitraryBoundedEnum, choose,- elements, listOf, oneof, vector)+ elements, listOf, oneof, vector, vectorOf) import Test.QuickCheck.Instances.Time () import GoPro.Plus.Auth@@ -53,20 +53,34 @@ gMaybe :: Gen a -> Gen (Maybe a) gMaybe a = oneof [pure Nothing, Just <$> a] +aCamera :: Gen String+aCamera = elements [+ "GoPro Max",+ "HERO11 Black",+ "HERO3+Silver Edition",+ "HERO4 Black",+ "HERO5 Black",+ "HERO5 Session",+ "HERO8 Black",+ "HERO9 Black"]++genID :: Gen MediumID+genID = T.pack <$> vectorOf 13 (elements (['a'..'z'] <> ['A'..'Z'] <> ['0'..'9']))+ instance Arbitrary Medium where arbitrary = Medium- <$> aText- <*> gMaybe aString- <*> arbitrary- <*> arbitrary+ <$> genID+ <*> gMaybe aCamera <*> arbitrary <*> arbitrary+ <*> (fmap getNonNegative <$> arbitrary)+ <*> (getNonNegative <$> arbitrary) <*> arbitrary <*> gMaybe aString <*> arbitrary <*> aString- <*> arbitrary- <*> arbitrary+ <*> (fmap getNonNegative <$> arbitrary)+ <*> (fmap getNonNegative <$> arbitrary) <*> gMaybe aString instance Arbitrary Moment where arbitrary = Moment <$> aText <*> arbitrary