Revision db9583f2 test/hs/Test/Ganeti/TestCommon.hs
b/test/hs/Test/Ganeti/TestCommon.hs | ||
---|---|---|
51 | 51 |
, genSetHelper |
52 | 52 |
, genSet |
53 | 53 |
, genListSet |
54 |
, genAndRestArguments |
|
54 | 55 |
, genIPv4Address |
55 | 56 |
, genIPv4Network |
56 | 57 |
, genIp6Addr |
... | ... | |
74 | 75 |
import Control.Monad |
75 | 76 |
import Data.Attoparsec.Text (Parser, parseOnly) |
76 | 77 |
import Data.List |
78 |
import qualified Data.Map as M |
|
77 | 79 |
import Data.Text (pack) |
78 | 80 |
import Data.Word |
79 | 81 |
import qualified Data.Set as Set |
... | ... | |
293 | 295 |
-> Gen (BasicTypes.ListSet a) |
294 | 296 |
genListSet is = BasicTypes.ListSet <$> genSet is |
295 | 297 |
|
298 |
-- | Generate an arbitrary element of and AndRestArguments field. |
|
299 |
genAndRestArguments :: Gen (M.Map String J.JSValue) |
|
300 |
genAndRestArguments = do |
|
301 |
n <- choose (0::Int, 10) |
|
302 |
let oneParam _ = do |
|
303 |
name <- choose (15 ::Int, 25) |
|
304 |
>>= flip vectorOf (elements tagChar) |
|
305 |
intvalue <- arbitrary |
|
306 |
value <- oneof [ J.JSString . J.toJSString <$> genName |
|
307 |
, return $ J.showJSON (intvalue :: Int) |
|
308 |
] |
|
309 |
return (name, value) |
|
310 |
M.fromList `liftM` mapM oneParam [1..n] |
|
311 |
|
|
296 | 312 |
-- | Generate an arbitrary IPv4 address in textual form. |
297 | 313 |
genIPv4 :: Gen String |
298 | 314 |
genIPv4 = do |
Also available in: Unified diff