Skip to content

Commit

Permalink
Add generators for token names chosen from a medium-sized range.
Browse files Browse the repository at this point in the history
  • Loading branch information
jonathanknowles committed Jan 14, 2021
1 parent 66b6ab7 commit 72ec23f
Showing 1 changed file with 20 additions and 4 deletions.
24 changes: 20 additions & 4 deletions lib/core/src/Cardano/Wallet/Primitive/Types/TokenPolicy/Gen.hs
@@ -1,7 +1,9 @@
module Cardano.Wallet.Primitive.Types.TokenPolicy.Gen
( genTokenNameSmallRange
, genTokenNameMediumRange
, genTokenPolicyIdSmallRange
, shrinkTokenNameSmallRange
, shrinkTokenNameMediumRange
, shrinkTokenPolicyIdSmallRange
) where

Expand All @@ -25,13 +27,27 @@ import qualified Data.Text as T
--------------------------------------------------------------------------------

genTokenNameSmallRange :: Gen TokenName
genTokenNameSmallRange = elements tokenNames
genTokenNameSmallRange = elements tokenNamesSmallRange

shrinkTokenNameSmallRange :: TokenName -> [TokenName]
shrinkTokenNameSmallRange name = filter (< name) tokenNames
shrinkTokenNameSmallRange name = filter (< name) tokenNamesSmallRange

tokenNames :: [TokenName]
tokenNames = mkTokenName . ("Token" `T.snoc`) <$> ['A' .. 'D']
tokenNamesSmallRange :: [TokenName]
tokenNamesSmallRange = mkTokenName . ("Token" `T.snoc`) <$> ['A' .. 'D']

--------------------------------------------------------------------------------
-- Token names chosen from a medium-sized range (to minimize the risk of
-- collisions)
--------------------------------------------------------------------------------

genTokenNameMediumRange :: Gen TokenName
genTokenNameMediumRange = elements tokenNamesMediumRange

shrinkTokenNameMediumRange :: TokenName -> [TokenName]
shrinkTokenNameMediumRange name = filter (< name) tokenNamesMediumRange

tokenNamesMediumRange :: [TokenName]
tokenNamesMediumRange = mkTokenName . ("Token" `T.snoc`) <$> ['A' .. 'Z']

--------------------------------------------------------------------------------
-- Token policy identifiers chosen from a small range (to allow collisions)
Expand Down

0 comments on commit 72ec23f

Please sign in to comment.