Revision 5006418e

b/htest/Test/Ganeti/Confd/Utils.hs
49 49

  
50 50
instance Arbitrary Confd.ConfdQuery where
51 51
  arbitrary = oneof [ pure Confd.EmptyQuery
52
                    , Confd.PlainQuery <$> getName
52
                    , Confd.PlainQuery <$> genName
53 53
                    , Confd.DictQuery <$> arbitrary
54 54
                    ]
55 55

  
b/htest/Test/Ganeti/HTools/Instance.hs
49 49
-- | Generates a random instance with maximum disk/mem/cpu values.
50 50
genInstanceSmallerThan :: Int -> Int -> Int -> Gen Instance.Instance
51 51
genInstanceSmallerThan lim_mem lim_dsk lim_cpu = do
52
  name <- getFQDN
52
  name <- genFQDN
53 53
  mem <- choose (0, lim_mem)
54 54
  dsk <- choose (0, lim_dsk)
55 55
  run_st <- arbitrary
b/htest/Test/Ganeti/HTools/Node.hs
71 71
                      mm * Types.unitDsk,
72 72
                      mm * Types.unitCpu)
73 73
          Nothing -> (maxMem, maxDsk, maxCpu)
74
  name  <- getFQDN
74
  name  <- genFQDN
75 75
  mem_t <- choose (base_mem, top_mem)
76 76
  mem_f <- choose (base_mem, mem_t)
77 77
  mem_n <- choose (0, mem_t - mem_f)
b/htest/Test/Ganeti/Luxi.hs
58 58
  arbitrary = do
59 59
    lreq <- arbitrary
60 60
    case lreq of
61
      Luxi.ReqQuery -> Luxi.Query <$> arbitrary <*> getFields <*> genFilter
62
      Luxi.ReqQueryFields -> Luxi.QueryFields <$> arbitrary <*> getFields
63
      Luxi.ReqQueryNodes -> Luxi.QueryNodes <$> listOf getFQDN <*>
64
                            getFields <*> arbitrary
61
      Luxi.ReqQuery -> Luxi.Query <$> arbitrary <*> genFields <*> genFilter
62
      Luxi.ReqQueryFields -> Luxi.QueryFields <$> arbitrary <*> genFields
63
      Luxi.ReqQueryNodes -> Luxi.QueryNodes <$> listOf genFQDN <*>
64
                            genFields <*> arbitrary
65 65
      Luxi.ReqQueryGroups -> Luxi.QueryGroups <$> arbitrary <*>
66 66
                             arbitrary <*> arbitrary
67
      Luxi.ReqQueryInstances -> Luxi.QueryInstances <$> listOf getFQDN <*>
68
                                getFields <*> arbitrary
69
      Luxi.ReqQueryJobs -> Luxi.QueryJobs <$> arbitrary <*> getFields
67
      Luxi.ReqQueryInstances -> Luxi.QueryInstances <$> listOf genFQDN <*>
68
                                genFields <*> arbitrary
69
      Luxi.ReqQueryJobs -> Luxi.QueryJobs <$> arbitrary <*> genFields
70 70
      Luxi.ReqQueryExports -> Luxi.QueryExports <$>
71
                              listOf getFQDN <*> arbitrary
72
      Luxi.ReqQueryConfigValues -> Luxi.QueryConfigValues <$> getFields
71
                              listOf genFQDN <*> arbitrary
72
      Luxi.ReqQueryConfigValues -> Luxi.QueryConfigValues <$> genFields
73 73
      Luxi.ReqQueryClusterInfo -> pure Luxi.QueryClusterInfo
74 74
      Luxi.ReqQueryTags -> Luxi.QueryTags <$> arbitrary
75 75
      Luxi.ReqSubmitJob -> Luxi.SubmitJob <$> resize maxOpCodes arbitrary
76 76
      Luxi.ReqSubmitManyJobs -> Luxi.SubmitManyJobs <$>
77 77
                                resize maxOpCodes arbitrary
78 78
      Luxi.ReqWaitForJobChange -> Luxi.WaitForJobChange <$> arbitrary <*>
79
                                  getFields <*> pure J.JSNull <*>
79
                                  genFields <*> pure J.JSNull <*>
80 80
                                  pure J.JSNull <*> arbitrary
81 81
      Luxi.ReqArchiveJob -> Luxi.ArchiveJob <$> arbitrary
82 82
      Luxi.ReqAutoArchiveJobs -> Luxi.AutoArchiveJobs <$> arbitrary <*>
b/htest/Test/Ganeti/Objects.hs
53 53
$(genArbitrary ''PartialNDParams)
54 54

  
55 55
instance Arbitrary Node where
56
  arbitrary = Node <$> getFQDN <*> getFQDN <*> getFQDN
57
              <*> arbitrary <*> arbitrary <*> arbitrary <*> getFQDN
56
  arbitrary = Node <$> genFQDN <*> genFQDN <*> genFQDN
57
              <*> arbitrary <*> arbitrary <*> arbitrary <*> genFQDN
58 58
              <*> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
59
              <*> arbitrary <*> arbitrary <*> getFQDN <*> arbitrary
59
              <*> arbitrary <*> arbitrary <*> genFQDN <*> arbitrary
60 60
              <*> (Set.fromList <$> genTags)
61 61

  
62 62
$(genArbitrary ''BlockDriver)
......
65 65

  
66 66
instance Arbitrary DiskLogicalId where
67 67
  arbitrary = oneof [ LIDPlain <$> arbitrary <*> arbitrary
68
                    , LIDDrbd8 <$> getFQDN <*> getFQDN <*> arbitrary
68
                    , LIDDrbd8 <$> genFQDN <*> genFQDN <*> arbitrary
69 69
                               <*> arbitrary <*> arbitrary <*> arbitrary
70 70
                    , LIDFile  <$> arbitrary <*> arbitrary
71 71
                    , LIDBlockDev <$> arbitrary <*> arbitrary
......
92 92
instance Arbitrary Instance where
93 93
  arbitrary =
94 94
    Instance
95
      <$> getFQDN <*> getFQDN <*> getFQDN -- OS name, but...
95
      <$> genFQDN <*> genFQDN <*> genFQDN -- OS name, but...
96 96
      <*> arbitrary
97 97
      -- FIXME: add non-empty hvparams when they're a proper type
98 98
      <*> pure (GenericContainer Map.empty) <*> arbitrary
......
119 119
-- | FIXME: This generates completely random data, without normal
120 120
-- validation rules.
121 121
instance Arbitrary NodeGroup where
122
  arbitrary = NodeGroup <$> getFQDN <*> pure [] <*> arbitrary <*> arbitrary
122
  arbitrary = NodeGroup <$> genFQDN <*> pure [] <*> arbitrary <*> arbitrary
123 123
                        <*> arbitrary <*> pure (GenericContainer Map.empty)
124 124
                        -- ts
125 125
                        <*> arbitrary <*> arbitrary
b/htest/Test/Ganeti/OpCodes.hs
56 56
-- * Arbitrary instances
57 57

  
58 58
instance Arbitrary OpCodes.TagObject where
59
  arbitrary = oneof [ OpCodes.TagInstance <$> getFQDN
60
                    , OpCodes.TagNode     <$> getFQDN
61
                    , OpCodes.TagGroup    <$> getFQDN
59
  arbitrary = oneof [ OpCodes.TagInstance <$> genFQDN
60
                    , OpCodes.TagNode     <$> genFQDN
61
                    , OpCodes.TagGroup    <$> genFQDN
62 62
                    , pure OpCodes.TagCluster
63 63
                    ]
64 64

  
......
70 70
  arbitrary = choose (0, C.maxDisks - 1) >>= OpCodes.mkDiskIndex
71 71

  
72 72
instance Arbitrary INicParams where
73
  arbitrary = INicParams <$> getMaybe genNameNE <*> getMaybe getName <*>
74
              getMaybe genNameNE <*> getMaybe genNameNE
73
  arbitrary = INicParams <$> genMaybe genNameNE <*> genMaybe genName <*>
74
              genMaybe genNameNE <*> genMaybe genNameNE
75 75

  
76 76
instance Arbitrary IDiskParams where
77 77
  arbitrary = IDiskParams <$> arbitrary <*> arbitrary <*>
78
              getMaybe genNameNE <*> getMaybe genNameNE <*>
79
              getMaybe genNameNE
78
              genMaybe genNameNE <*> genMaybe genNameNE <*>
79
              genMaybe genNameNE
80 80

  
81 81
instance Arbitrary RecreateDisksInfo where
82 82
  arbitrary = oneof [ pure RecreateDisksAll
......
108 108
        OpCodes.OpTestDelay <$> arbitrary <*> arbitrary
109 109
                 <*> genNodeNames <*> arbitrary
110 110
      "OP_INSTANCE_REPLACE_DISKS" ->
111
        OpCodes.OpInstanceReplaceDisks <$> getFQDN <*>
112
          getMaybe genNodeNameNE <*> arbitrary <*> genDiskIndices <*>
113
          getMaybe genNameNE
111
        OpCodes.OpInstanceReplaceDisks <$> genFQDN <*>
112
          genMaybe genNodeNameNE <*> arbitrary <*> genDiskIndices <*>
113
          genMaybe genNameNE
114 114
      "OP_INSTANCE_FAILOVER" ->
115
        OpCodes.OpInstanceFailover <$> getFQDN <*> arbitrary <*>
116
          getMaybe genNodeNameNE
115
        OpCodes.OpInstanceFailover <$> genFQDN <*> arbitrary <*>
116
          genMaybe genNodeNameNE
117 117
      "OP_INSTANCE_MIGRATE" ->
118
        OpCodes.OpInstanceMigrate <$> getFQDN <*> arbitrary <*>
119
          arbitrary <*> arbitrary <*> getMaybe genNodeNameNE
118
        OpCodes.OpInstanceMigrate <$> genFQDN <*> arbitrary <*>
119
          arbitrary <*> arbitrary <*> genMaybe genNodeNameNE
120 120
      "OP_TAGS_GET" ->
121 121
        OpCodes.OpTagsGet <$> arbitrary <*> arbitrary
122 122
      "OP_TAGS_SEARCH" ->
......
131 131
      "OP_CLUSTER_VERIFY" ->
132 132
        OpCodes.OpClusterVerify <$> arbitrary <*> arbitrary <*>
133 133
          genSet Nothing <*> genSet Nothing <*> arbitrary <*>
134
          getMaybe genNameNE
134
          genMaybe genNameNE
135 135
      "OP_CLUSTER_VERIFY_CONFIG" ->
136 136
        OpCodes.OpClusterVerifyConfig <$> arbitrary <*> arbitrary <*>
137 137
          genSet Nothing <*> arbitrary
......
142 142
      "OP_GROUP_VERIFY_DISKS" ->
143 143
        OpCodes.OpGroupVerifyDisks <$> genNameNE
144 144
      "OP_CLUSTER_REPAIR_DISK_SIZES" ->
145
        OpCodes.OpClusterRepairDiskSizes <$>
146
          resize maxNodes (listOf (getFQDN >>= mkNonEmpty))
145
        OpCodes.OpClusterRepairDiskSizes <$> genNodeNamesNE
147 146
      "OP_CLUSTER_CONFIG_QUERY" ->
148 147
        OpCodes.OpClusterConfigQuery <$> genFieldsNE
149 148
      "OP_CLUSTER_RENAME" ->
150
        OpCodes.OpClusterRename <$> (getName >>= mkNonEmpty)
149
        OpCodes.OpClusterRename <$> genNameNE
151 150
      "OP_CLUSTER_SET_PARAMS" ->
152 151
        OpCodes.OpClusterSetParams <$> emptyMUD <*> emptyMUD <*>
153
          arbitrary <*> getMaybe (listOf1 arbitrary >>= mkNonEmpty) <*>
154
          getMaybe genEmptyContainer <*> emptyMUD <*>
155
          getMaybe genEmptyContainer <*> getMaybe genEmptyContainer <*>
156
          getMaybe genEmptyContainer <*> getMaybe arbitrary <*>
152
          arbitrary <*> genMaybe (listOf1 arbitrary >>= mkNonEmpty) <*>
153
          genMaybe genEmptyContainer <*> emptyMUD <*>
154
          genMaybe genEmptyContainer <*> genMaybe genEmptyContainer <*>
155
          genMaybe genEmptyContainer <*> genMaybe arbitrary <*>
157 156
          arbitrary <*> arbitrary <*> arbitrary <*>
158 157
          arbitrary <*> arbitrary <*> arbitrary <*>
159 158
          emptyMUD <*> emptyMUD <*> arbitrary <*>
......
171 170
      "OP_OOB_COMMAND" ->
172 171
        OpCodes.OpOobCommand <$> genNodeNamesNE <*> arbitrary <*>
173 172
          arbitrary <*> arbitrary <*> (arbitrary `suchThat` (>0))
174
      "OP_NODE_REMOVE" -> OpCodes.OpNodeRemove <$> (getFQDN >>= mkNonEmpty)
173
      "OP_NODE_REMOVE" -> OpCodes.OpNodeRemove <$> genNodeNameNE
175 174
      "OP_NODE_ADD" ->
176 175
        OpCodes.OpNodeAdd <$> genNodeNameNE <*> emptyMUD <*> emptyMUD <*>
177
          getMaybe getName <*> getMaybe genNameNE <*> arbitrary <*>
178
          getMaybe genNameNE <*> arbitrary <*> arbitrary <*> emptyMUD
176
          genMaybe genName <*> genMaybe genNameNE <*> arbitrary <*>
177
          genMaybe genNameNE <*> arbitrary <*> arbitrary <*> emptyMUD
179 178
      "OP_NODE_QUERY" ->
180 179
        OpCodes.OpNodeQuery <$> genFieldsNE <*> arbitrary <*> genNamesNE
181 180
      "OP_NODE_QUERYVOLS" ->
......
192 191
      "OP_NODE_SET_PARAMS" ->
193 192
        OpCodes.OpNodeSetParams <$> genNodeNameNE <*> arbitrary <*>
194 193
          emptyMUD <*> emptyMUD <*> arbitrary <*> arbitrary <*> arbitrary <*>
195
          arbitrary <*> arbitrary <*> arbitrary <*> getMaybe genNameNE <*>
194
          arbitrary <*> arbitrary <*> arbitrary <*> genMaybe genNameNE <*>
196 195
          emptyMUD
197 196
      "OP_NODE_POWERCYCLE" ->
198 197
        OpCodes.OpNodePowercycle <$> genNodeNameNE <*> arbitrary
199 198
      "OP_NODE_MIGRATE" ->
200 199
        OpCodes.OpNodeMigrate <$> genNodeNameNE <*> arbitrary <*>
201
          arbitrary <*> getMaybe genNodeNameNE <*> arbitrary <*>
202
          arbitrary <*> getMaybe genNameNE
200
          arbitrary <*> genMaybe genNodeNameNE <*> arbitrary <*>
201
          arbitrary <*> genMaybe genNameNE
203 202
      "OP_NODE_EVACUATE" ->
204 203
        OpCodes.OpNodeEvacuate <$> arbitrary <*> genNodeNameNE <*>
205
          getMaybe genNodeNameNE <*> getMaybe genNameNE <*> arbitrary
204
          genMaybe genNodeNameNE <*> genMaybe genNameNE <*> arbitrary
206 205
      "OP_INSTANCE_CREATE" ->
207
        OpCodes.OpInstanceCreate <$> getFQDN <*> arbitrary <*>
206
        OpCodes.OpInstanceCreate <$> genFQDN <*> arbitrary <*>
208 207
          arbitrary <*> arbitrary <*> arbitrary <*> pure emptyJSObject <*>
209
          arbitrary <*> arbitrary <*> arbitrary <*> getMaybe genNameNE <*>
210
          pure emptyJSObject <*> arbitrary <*> getMaybe genNameNE <*>
208
          arbitrary <*> arbitrary <*> arbitrary <*> genMaybe genNameNE <*>
209
          pure emptyJSObject <*> arbitrary <*> genMaybe genNameNE <*>
211 210
          arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*>
212 211
          arbitrary <*> arbitrary <*> pure emptyJSObject <*>
213
          getMaybe genNameNE <*>
214
          getMaybe genNodeNameNE <*> getMaybe genNodeNameNE <*>
215
          getMaybe (pure []) <*> getMaybe genNodeNameNE <*>
216
          arbitrary <*> getMaybe genNodeNameNE <*>
217
          getMaybe genNodeNameNE <*> getMaybe genNameNE <*>
212
          genMaybe genNameNE <*>
213
          genMaybe genNodeNameNE <*> genMaybe genNodeNameNE <*>
214
          genMaybe (pure []) <*> genMaybe genNodeNameNE <*>
215
          arbitrary <*> genMaybe genNodeNameNE <*>
216
          genMaybe genNodeNameNE <*> genMaybe genNameNE <*>
218 217
          arbitrary <*> (genTags >>= mapM mkNonEmpty)
219 218
      "OP_INSTANCE_MULTI_ALLOC" ->
220
        OpCodes.OpInstanceMultiAlloc <$> getMaybe genNameNE <*> pure []
219
        OpCodes.OpInstanceMultiAlloc <$> genMaybe genNameNE <*> pure []
221 220
      "OP_INSTANCE_REINSTALL" ->
222
        OpCodes.OpInstanceReinstall <$> getFQDN <*> arbitrary <*>
223
          getMaybe genNameNE <*> getMaybe (pure emptyJSObject)
221
        OpCodes.OpInstanceReinstall <$> genFQDN <*> arbitrary <*>
222
          genMaybe genNameNE <*> genMaybe (pure emptyJSObject)
224 223
      "OP_INSTANCE_REMOVE" ->
225
        OpCodes.OpInstanceRemove <$> getFQDN <*> arbitrary <*> arbitrary
224
        OpCodes.OpInstanceRemove <$> genFQDN <*> arbitrary <*> arbitrary
226 225
      "OP_INSTANCE_RENAME" ->
227
        OpCodes.OpInstanceRename <$> getFQDN <*> genNodeNameNE <*>
226
        OpCodes.OpInstanceRename <$> genFQDN <*> genNodeNameNE <*>
228 227
          arbitrary <*> arbitrary
229 228
      "OP_INSTANCE_STARTUP" ->
230
        OpCodes.OpInstanceStartup <$> getFQDN <*> arbitrary <*> arbitrary <*>
229
        OpCodes.OpInstanceStartup <$> genFQDN <*> arbitrary <*> arbitrary <*>
231 230
          pure emptyJSObject <*> pure emptyJSObject <*>
232 231
          arbitrary <*> arbitrary
233 232
      "OP_INSTANCE_SHUTDOWN" ->
234
        OpCodes.OpInstanceShutdown <$> getFQDN <*> arbitrary <*>
233
        OpCodes.OpInstanceShutdown <$> genFQDN <*> arbitrary <*>
235 234
          arbitrary <*> arbitrary
236 235
      "OP_INSTANCE_REBOOT" ->
237
        OpCodes.OpInstanceReboot <$> getFQDN <*> arbitrary <*>
236
        OpCodes.OpInstanceReboot <$> genFQDN <*> arbitrary <*>
238 237
          arbitrary <*> arbitrary
239 238
      "OP_INSTANCE_MOVE" ->
240
        OpCodes.OpInstanceMove <$> getFQDN <*> arbitrary <*> arbitrary <*>
239
        OpCodes.OpInstanceMove <$> genFQDN <*> arbitrary <*> arbitrary <*>
241 240
          genNodeNameNE <*> arbitrary
242
      "OP_INSTANCE_CONSOLE" -> OpCodes.OpInstanceConsole <$> getFQDN
241
      "OP_INSTANCE_CONSOLE" -> OpCodes.OpInstanceConsole <$> genFQDN
243 242
      "OP_INSTANCE_ACTIVATE_DISKS" ->
244
        OpCodes.OpInstanceActivateDisks <$> getFQDN <*>
243
        OpCodes.OpInstanceActivateDisks <$> genFQDN <*>
245 244
          arbitrary <*> arbitrary
246 245
      "OP_INSTANCE_DEACTIVATE_DISKS" ->
247
        OpCodes.OpInstanceDeactivateDisks <$> getFQDN <*> arbitrary
246
        OpCodes.OpInstanceDeactivateDisks <$> genFQDN <*> arbitrary
248 247
      "OP_INSTANCE_RECREATE_DISKS" ->
249
        OpCodes.OpInstanceRecreateDisks <$> getFQDN <*> arbitrary <*>
250
          genNodeNamesNE <*> getMaybe genNameNE
248
        OpCodes.OpInstanceRecreateDisks <$> genFQDN <*> arbitrary <*>
249
          genNodeNamesNE <*> genMaybe genNameNE
251 250
      "OP_INSTANCE_QUERY" ->
252 251
        OpCodes.OpInstanceQuery <$> genFieldsNE <*> genNamesNE <*> arbitrary
253 252
      "OP_INSTANCE_QUERY_DATA" ->
254 253
        OpCodes.OpInstanceQueryData <$> arbitrary <*>
255 254
          genNodeNamesNE <*> arbitrary
256 255
      "OP_INSTANCE_SET_PARAMS" ->
257
        OpCodes.OpInstanceSetParams <$> getFQDN <*> arbitrary <*>
256
        OpCodes.OpInstanceSetParams <$> genFQDN <*> arbitrary <*>
258 257
          arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*>
259 258
          pure emptyJSObject <*> arbitrary <*> pure emptyJSObject <*>
260
          arbitrary <*> getMaybe genNodeNameNE <*> getMaybe genNameNE <*>
259
          arbitrary <*> genMaybe genNodeNameNE <*> genMaybe genNameNE <*>
261 260
          pure emptyJSObject <*> arbitrary <*> arbitrary <*> arbitrary
262 261
      "OP_INSTANCE_GROW_DISK" ->
263
        OpCodes.OpInstanceGrowDisk <$> getFQDN <*> arbitrary <*>
262
        OpCodes.OpInstanceGrowDisk <$> genFQDN <*> arbitrary <*>
264 263
          arbitrary <*> arbitrary <*> arbitrary
265 264
      "OP_INSTANCE_CHANGE_GROUP" ->
266
        OpCodes.OpInstanceChangeGroup <$> getFQDN <*> arbitrary <*>
267
          getMaybe genNameNE <*> getMaybe (resize maxNodes (listOf genNameNE))
265
        OpCodes.OpInstanceChangeGroup <$> genFQDN <*> arbitrary <*>
266
          genMaybe genNameNE <*> genMaybe (resize maxNodes (listOf genNameNE))
268 267
      "OP_GROUP_ADD" ->
269 268
        OpCodes.OpGroupAdd <$> genNameNE <*> arbitrary <*>
270
          emptyMUD <*> getMaybe genEmptyContainer <*>
269
          emptyMUD <*> genMaybe genEmptyContainer <*>
271 270
          emptyMUD <*> emptyMUD <*> emptyMUD
272 271
      "OP_GROUP_ASSIGN_NODES" ->
273 272
        OpCodes.OpGroupAssignNodes <$> genNameNE <*> arbitrary <*>
......
276 275
        OpCodes.OpGroupQuery <$> genFieldsNE <*> genNamesNE
277 276
      "OP_GROUP_SET_PARAMS" ->
278 277
        OpCodes.OpGroupSetParams <$> genNameNE <*> arbitrary <*>
279
          emptyMUD <*> getMaybe genEmptyContainer <*>
278
          emptyMUD <*> genMaybe genEmptyContainer <*>
280 279
          emptyMUD <*> emptyMUD <*> emptyMUD
281 280
      "OP_GROUP_REMOVE" ->
282 281
        OpCodes.OpGroupRemove <$> genNameNE
......
284 283
        OpCodes.OpGroupRename <$> genNameNE <*> genNameNE
285 284
      "OP_GROUP_EVACUATE" ->
286 285
        OpCodes.OpGroupEvacuate <$> genNameNE <*> arbitrary <*>
287
          getMaybe genNameNE <*> getMaybe genNamesNE
286
          genMaybe genNameNE <*> genMaybe genNamesNE
288 287
      "OP_OS_DIAGNOSE" ->
289 288
        OpCodes.OpOsDiagnose <$> genFieldsNE <*> genNamesNE
290 289
      "OP_BACKUP_QUERY" ->
291 290
        OpCodes.OpBackupQuery <$> arbitrary <*> genNodeNamesNE
292 291
      "OP_BACKUP_PREPARE" ->
293
        OpCodes.OpBackupPrepare <$> getFQDN <*> arbitrary
292
        OpCodes.OpBackupPrepare <$> genFQDN <*> arbitrary
294 293
      "OP_BACKUP_EXPORT" ->
295
        OpCodes.OpBackupExport <$> getFQDN <*> arbitrary <*>
294
        OpCodes.OpBackupExport <$> genFQDN <*> arbitrary <*>
296 295
          arbitrary <*> arbitrary <*> arbitrary <*> arbitrary <*>
297
          getMaybe (pure []) <*> getMaybe genNameNE
296
          genMaybe (pure []) <*> genMaybe genNameNE
298 297
      "OP_BACKUP_REMOVE" ->
299
        OpCodes.OpBackupRemove <$> getFQDN
298
        OpCodes.OpBackupRemove <$> genFQDN
300 299
      "OP_TEST_ALLOCATOR" ->
301 300
        OpCodes.OpTestAllocator <$> arbitrary <*> arbitrary <*>
302 301
          genNameNE <*> pure [] <*> pure [] <*>
303
          arbitrary <*> getMaybe genNameNE <*>
302
          arbitrary <*> genMaybe genNameNE <*>
304 303
          (genTags >>= mapM mkNonEmpty) <*>
305
          arbitrary <*> arbitrary <*> getMaybe genNameNE <*>
306
          arbitrary <*> getMaybe genNodeNamesNE <*> arbitrary <*>
307
          getMaybe genNamesNE <*> arbitrary <*> arbitrary
304
          arbitrary <*> arbitrary <*> genMaybe genNameNE <*>
305
          arbitrary <*> genMaybe genNodeNamesNE <*> arbitrary <*>
306
          genMaybe genNamesNE <*> arbitrary <*> arbitrary
308 307
      "OP_TEST_JQUEUE" ->
309 308
        OpCodes.OpTestJqueue <$> arbitrary <*> arbitrary <*>
310
          resize 20 (listOf getFQDN) <*> arbitrary
309
          resize 20 (listOf genFQDN) <*> arbitrary
311 310
      "OP_TEST_DUMMY" ->
312 311
        OpCodes.OpTestDummy <$> pure J.JSNull <*> pure J.JSNull <*>
313 312
          pure J.JSNull <*> pure J.JSNull
314 313
      "OP_NETWORK_ADD" ->
315 314
        OpCodes.OpNetworkAdd <$> genNameNE <*> arbitrary <*> genIp4Net <*>
316
          getMaybe genIp4Addr <*> pure Nothing <*> pure Nothing <*>
317
          getMaybe genMacPrefix <*> getMaybe (listOf genIp4Addr) <*>
315
          genMaybe genIp4Addr <*> pure Nothing <*> pure Nothing <*>
316
          genMaybe genMacPrefix <*> genMaybe (listOf genIp4Addr) <*>
318 317
          (genTags >>= mapM mkNonEmpty)
319 318
      "OP_NETWORK_REMOVE" ->
320 319
        OpCodes.OpNetworkRemove <$> genNameNE <*> arbitrary
321 320
      "OP_NETWORK_SET_PARAMS" ->
322 321
        OpCodes.OpNetworkSetParams <$> genNameNE <*> arbitrary <*>
323
          getMaybe genIp4Addr <*> pure Nothing <*> pure Nothing <*>
324
          getMaybe genMacPrefix <*> getMaybe (listOf genIp4Addr) <*>
325
          getMaybe (listOf genIp4Addr)
322
          genMaybe genIp4Addr <*> pure Nothing <*> pure Nothing <*>
323
          genMaybe genMacPrefix <*> genMaybe (listOf genIp4Addr) <*>
324
          genMaybe (listOf genIp4Addr)
326 325
      "OP_NETWORK_CONNECT" ->
327 326
        OpCodes.OpNetworkConnect <$> genNameNE <*> genNameNE <*>
328 327
          arbitrary <*> genNameNE <*> arbitrary
......
343 342

  
344 343
-- | Empty maybe unchecked dictionary.
345 344
emptyMUD :: Gen (Maybe (J.JSObject J.JSValue))
346
emptyMUD = getMaybe $ pure emptyJSObject
345
emptyMUD = genMaybe $ pure emptyJSObject
347 346

  
348 347
-- | Generates an empty container.
349 348
genEmptyContainer :: (Ord a) => Gen (GenericContainer a b)
......
357 356

  
358 357
-- | Generates a list of node names.
359 358
genNodeNames :: Gen [String]
360
genNodeNames = resize maxNodes (listOf getFQDN)
359
genNodeNames = resize maxNodes (listOf genFQDN)
361 360

  
362 361
-- | Generates a list of node names in non-empty string type.
363 362
genNodeNamesNE :: Gen [NonEmptyString]
......
365 364

  
366 365
-- | Gets a node name in non-empty type.
367 366
genNodeNameNE :: Gen NonEmptyString
368
genNodeNameNE = getFQDN >>= mkNonEmpty
367
genNodeNameNE = genFQDN >>= mkNonEmpty
369 368

  
370 369
-- | Gets a name (non-fqdn) in non-empty type.
371 370
genNameNE :: Gen NonEmptyString
372
genNameNE = getName >>= mkNonEmpty
371
genNameNE = genName >>= mkNonEmpty
373 372

  
374 373
-- | Gets a list of names (non-fqdn) in non-empty type.
375 374
genNamesNE :: Gen [NonEmptyString]
......
377 376

  
378 377
-- | Returns a list of non-empty fields.
379 378
genFieldsNE :: Gen [NonEmptyString]
380
genFieldsNE = getFields >>= mapM mkNonEmpty
379
genFieldsNE = genFields >>= mapM mkNonEmpty
381 380

  
382 381
-- | Generate an arbitrary IPv4 address in textual form.
383 382
genIp4Addr :: Gen NonEmptyString
b/htest/Test/Ganeti/Query/Filter.hs
180 180
-- | Tests make simple filter.
181 181
prop_makeSimpleFilter :: Property
182 182
prop_makeSimpleFilter =
183
  forAll (resize 10 $ listOf1 getName) $ \names ->
184
  forAll getName $ \namefield ->
183
  forAll (resize 10 $ listOf1 genName) $ \names ->
184
  forAll genName $ \namefield ->
185 185
  conjoin [ printTestCase "test expected names" $
186 186
              makeSimpleFilter namefield names ==?
187 187
              OrFilter (map (EQFilter namefield . QuotedString) names)
b/htest/Test/Ganeti/Query/Language.hs
53 53
genFilter' :: Int -> Gen (Filter FilterField)
54 54
genFilter' 0 =
55 55
  oneof [ pure EmptyFilter
56
        , TrueFilter     <$> getName
57
        , EQFilter       <$> getName <*> value
58
        , LTFilter       <$> getName <*> value
59
        , GTFilter       <$> getName <*> value
60
        , LEFilter       <$> getName <*> value
61
        , GEFilter       <$> getName <*> value
62
        , RegexpFilter   <$> getName <*> arbitrary
63
        , ContainsFilter <$> getName <*> value
56
        , TrueFilter     <$> genName
57
        , EQFilter       <$> genName <*> value
58
        , LTFilter       <$> genName <*> value
59
        , GTFilter       <$> genName <*> value
60
        , LEFilter       <$> genName <*> value
61
        , GEFilter       <$> genName <*> value
62
        , RegexpFilter   <$> genName <*> arbitrary
63
        , ContainsFilter <$> genName <*> value
64 64
        ]
65
    where value = oneof [ QuotedString <$> getName
65
    where value = oneof [ QuotedString <$> genName
66 66
                        , NumericValue <$> arbitrary
67 67
                        ]
68 68
genFilter' n =
......
81 81
$(genArbitrary ''ItemType)
82 82

  
83 83
instance Arbitrary FilterRegex where
84
  arbitrary = getName >>= mkRegex -- a name should be a good regex
84
  arbitrary = genName >>= mkRegex -- a name should be a good regex
85 85

  
86 86
$(genArbitrary ''ResultStatus)
87 87

  
b/htest/Test/Ganeti/Query/Query.hs
235 235
-- | Tests that requested names checking behaves as expected.
236 236
prop_getRequestedNames :: Property
237 237
prop_getRequestedNames =
238
  forAll getName $ \node1 ->
238
  forAll genName $ \node1 ->
239 239
  let chk = getRequestedNames . Query (ItemTypeOpCode QRNode) []
240 240
      q_node1 = QuotedString node1
241 241
      eq_name = EQFilter "name"
b/htest/Test/Ganeti/TestCommon.hs
132 132
  show = show . dnsGetChar
133 133

  
134 134
-- | Generates a single name component.
135
getName :: Gen String
136
getName = do
135
genName :: Gen String
136
genName = do
137 137
  n <- choose (1, 64)
138 138
  dn <- vector n
139 139
  return (map dnsGetChar dn)
140 140

  
141 141
-- | Generates an entire FQDN.
142
getFQDN :: Gen String
143
getFQDN = do
142
genFQDN :: Gen String
143
genFQDN = do
144 144
  ncomps <- choose (1, 4)
145
  names <- vectorOf ncomps getName
145
  names <- vectorOf ncomps genName
146 146
  return $ intercalate "." names
147 147

  
148 148
-- | Combinator that generates a 'Maybe' using a sub-combinator.
149
getMaybe :: Gen a -> Gen (Maybe a)
150
getMaybe subgen = oneof [ pure Nothing, liftM Just subgen ]
149
genMaybe :: Gen a -> Gen (Maybe a)
150
genMaybe subgen = oneof [ pure Nothing, liftM Just subgen ]
151 151

  
152 152
-- | Defines a tag type.
153 153
newtype TagChar = TagChar { tagGetChar :: Char }
......
181 181

  
182 182
-- | Generates a fields list. This uses the same character set as a
183 183
-- DNS name (just for simplicity).
184
getFields :: Gen [String]
185
getFields = do
184
genFields :: Gen [String]
185
genFields = do
186 186
  n <- choose (1, 32)
187
  vectorOf n getName
187
  vectorOf n genName
188 188

  
189 189
-- | Generates a list of a given size with non-duplicate elements.
190 190
genUniquesList :: (Eq a, Arbitrary a) => Int -> Gen [a]
b/htest/Test/Ganeti/Utils.hs
161 161
-- itself, etc.).
162 162
prop_niceSort_single :: Property
163 163
prop_niceSort_single =
164
  forAll getName $ \name ->
164
  forAll genName $ \name ->
165 165
  conjoin
166 166
  [ printTestCase "single string" $ [name] ==? niceSort [name]
167 167
  , printTestCase "single plus empty" $ ["", name] ==? niceSort [name, ""]

Also available in: Unified diff