genvalidity-uuid (empty) → 0.0.0.0
raw patch · 6 files changed
+111/−0 lines, 6 filesdep +QuickCheckdep +basedep +genvaliditysetup-changed
Dependencies added: QuickCheck, base, genvalidity, genvalidity-hspec, genvalidity-uuid, hspec, uuid, validity, validity-uuid
Files
- LICENSE +21/−0
- Setup.hs +3/−0
- genvalidity-uuid.cabal +48/−0
- src/Data/GenValidity/UUID.hs +22/−0
- test/Data/GenValidity/UUIDSpec.hs +16/−0
- test/Spec.hs +1/−0
+ LICENSE view
@@ -0,0 +1,21 @@+The MIT License (MIT)++Copyright (c) 2017 Tom Sydney Kerckhove++Permission is hereby granted, free of charge, to any person obtaining a copy+of this software and associated documentation files (the "Software"), to deal+in the Software without restriction, including without limitation the rights+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+copies of the Software, and to permit persons to whom the Software is+furnished to do so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ Setup.hs view
@@ -0,0 +1,3 @@+import Distribution.Simple++main = defaultMain
+ genvalidity-uuid.cabal view
@@ -0,0 +1,48 @@+name: genvalidity-uuid+version: 0.0.0.0+cabal-version: >=1.10+build-type: Simple+license: MIT+license-file: LICENSE+copyright: Copyright: (c) 2017 Tom Sydney Kerckhove+maintainer: syd.kerckhove@gmail.com+homepage: https://github.com/NorfairKing/validity#readme+synopsis: GenValidity support for UUID+description:+ Please see README.md+category: Testing+author: Tom Sydney Kerckhove++source-repository head+ type: git+ location: https://github.com/NorfairKing/validity++library+ exposed-modules:+ Data.GenValidity.UUID+ build-depends:+ base >=4.7 && <5,+ QuickCheck -any,+ genvalidity >=0.4 && <0.5,+ uuid -any,+ validity >= 0.4 && <0.5,+ validity-uuid >= 0.0 && <0.1+ default-language: Haskell2010+ hs-source-dirs: src++test-suite genvalidity-uuid-test+ type: exitcode-stdio-1.0+ main-is: Spec.hs+ build-depends:+ base -any,+ QuickCheck -any,+ genvalidity -any,+ genvalidity-hspec -any,+ genvalidity-uuid -any,+ hspec -any,+ uuid -any+ default-language: Haskell2010+ hs-source-dirs: test+ other-modules:+ Data.GenValidity.UUIDSpec+ ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall -fno-warn-name-shadowing
+ src/Data/GenValidity/UUID.hs view
@@ -0,0 +1,22 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# LANGUAGE CPP #-}++module Data.GenValidity.UUID where+#if !MIN_VERSION_base(4,8,0)+import Control.Applicative ((<*>))+import Data.Functor ((<$>))+#endif+import Data.GenValidity+import Data.UUID+import Data.Validity.UUID ()++instance GenUnchecked UUID where+ genUnchecked =+ fromWords <$> genUnchecked <*> genUnchecked <*> genUnchecked <*>+ genUnchecked+ shrinkUnchecked u =+ [ fromWords w1 w2 w3 w4+ | (w1, w2, w3, w4) <- shrinkUnchecked $ toWords u+ ]++instance GenValid UUID
+ test/Data/GenValidity/UUIDSpec.hs view
@@ -0,0 +1,16 @@+module Data.GenValidity.UUIDSpec+ ( spec+ ) where++import Test.Hspec+import Test.QuickCheck++import Data.GenValidity+import Data.GenValidity.UUID ()++import Data.UUID++spec :: Spec+spec =+ describe "genValid" $+ it "generates valid UUId's" $ forAll (genValid :: Gen UUID) isValid
+ test/Spec.hs view
@@ -0,0 +1,1 @@+{-# OPTIONS_GHC -F -pgmF hspec-discover #-}