Merge branch 'stable-2.14' into stable-2.15
[ganeti-github.git] / test / hs / Test / Ganeti / Objects.hs
index fab48bb..71a1d3c 100644 (file)
@@ -54,6 +54,8 @@ import qualified Test.HUnit as HUnit
 
 import Control.Applicative
 import Control.Monad
+import qualified Data.ByteString as BS
+import qualified Data.ByteString.UTF8 as UTF8
 import Data.Char
 import qualified Data.List as List
 import qualified Data.Map as Map
@@ -82,13 +84,16 @@ import Ganeti.Types
 
 instance Arbitrary (Container DataCollectorConfig) where
   arbitrary = do
-    let names = CU.toList C.dataCollectorNames
+    let names = map UTF8.fromString $ CU.toList C.dataCollectorNames
     activations <- vector $ length names
     timeouts <- vector $ length names
     let configs = zipWith DataCollectorConfig activations timeouts
     return GenericContainer {
       fromContainer = Map.fromList $ zip names configs }
 
+instance Arbitrary BS.ByteString where
+  arbitrary = fmap UTF8.fromString arbitrary
+
 $(genArbitrary ''PartialNDParams)
 
 instance Arbitrary Node where
@@ -96,7 +101,8 @@ instance Arbitrary Node where
               <*> arbitrary <*> arbitrary <*> arbitrary <*> genFQDN
               <*> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
               <*> arbitrary <*> arbitrary <*> arbitrary <*> arbitrary
-              <*> genFQDN <*> arbitrary <*> (Set.fromList <$> genTags)
+              <*> fmap UTF8.fromString genUUID <*> arbitrary
+              <*> (Set.fromList <$> genTags)
 
 $(genArbitrary ''BlockDriver)
 
@@ -278,7 +284,7 @@ genDiskWithChildren num_children = do
   name <- genMaybe genName
   spindles <- arbitrary
   params <- arbitrary
-  uuid <- genName
+  uuid <- fmap UTF8.fromString genUUID
   serial <- arbitrary
   time <- arbitrary
   return . RealDisk $
@@ -317,7 +323,8 @@ instance Arbitrary GroupDiskParams where
   arbitrary = return $ GenericContainer Map.empty
 
 instance Arbitrary ClusterNicParams where
-  arbitrary = (GenericContainer . Map.singleton C.ppDefault) <$> arbitrary
+  arbitrary = (GenericContainer . Map.singleton (UTF8.fromString C.ppDefault))
+              <$> arbitrary
 
 instance Arbitrary OsParams where
   arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
@@ -370,7 +377,7 @@ instance Arbitrary FilterRule where
                          <*> arbitrary
                          <*> arbitrary
                          <*> arbitrary
-                         <*> genUUID
+                         <*> fmap UTF8.fromString genUUID
 
 -- | Generates a network instance with minimum netmasks of /24. Generating
 -- bigger networks slows down the tests, because long bit strings are generated
@@ -411,12 +418,12 @@ genEmptyCluster ncount = do
   nodes <- vector ncount
   version <- arbitrary
   grp <- arbitrary
-  let guuid = groupUuid grp
+  let guuid = uuidOf grp
       nodes' = zipWith (\n idx ->
                           let newname = takeWhile (/= '.') (nodeName n)
                                         ++ "-" ++ show idx
-                          in (newname, n { nodeGroup = guuid,
-                                           nodeName = newname}))
+                          in ( UTF8.fromString newname
+                             , n { nodeGroup = guuid, nodeName = newname}))
                nodes [(1::Int)..]
       nodemap = Map.fromList nodes'
       contnodes = if Map.size nodemap /= ncount
@@ -428,7 +435,7 @@ genEmptyCluster ncount = do
       networks = GenericContainer Map.empty
       disks = GenericContainer Map.empty
       filters = GenericContainer Map.empty
-  let contgroups = GenericContainer $ Map.singleton guuid grp
+  let contgroups = GenericContainer $ Map.singleton (UTF8.fromString guuid) grp
   serial <- arbitrary
   -- timestamp fields
   ctime <- arbitrary
@@ -452,7 +459,7 @@ genConfigDataWithNetworks old_cfg = do
   let nets_unique = map ( \(name, net) -> net { networkName = name } )
         (zip net_names nets)
       net_map = GenericContainer $ Map.fromList
-        (map (\n -> (networkUuid n, n)) nets_unique)
+        (map (\n -> (UTF8.fromString $ uuidOf n, n)) nets_unique)
       new_cfg = old_cfg { configNetworks = net_map }
   return new_cfg
 
@@ -623,7 +630,7 @@ genNodeGroup = do
   ipolicy <- arbitrary
   diskparams <- pure (GenericContainer Map.empty)
   num_networks <- choose (0, 3)
-  net_uuid_list <- vectorOf num_networks (arbitrary::Gen String)
+  net_uuid_list <- vectorOf num_networks (arbitrary::Gen BS.ByteString)
   nic_param_list <- vectorOf num_networks (arbitrary::Gen PartialNicParams)
   net_map <- pure (GenericContainer . Map.fromList $
     zip net_uuid_list nic_param_list)
@@ -636,7 +643,8 @@ genNodeGroup = do
   serial <- arbitrary
   tags <- Set.fromList <$> genTags
   let group = NodeGroup name members ndparams alloc_policy ipolicy diskparams
-              net_map hv_state disk_state ctime mtime uuid serial tags
+              net_map hv_state disk_state ctime mtime (UTF8.fromString uuid)
+              serial tags
   return group
 
 instance Arbitrary NodeGroup where