#!/usr/bin/python
#
-# Copyright (C) 2006, 2007, 2008, 2010 Google Inc.
+# Copyright (C) 2006, 2007, 2008, 2010, 2012 Google Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
},
}
ndparams = {
- constants.ND_OOB_PROGRAM: "/bin/cluster-oob"
+ constants.ND_OOB_PROGRAM: "/bin/cluster-oob",
+ constants.ND_SPINDLE_COUNT: 1
}
self.fake_cl = objects.Cluster(hvparams=hvparams, os_hvp=os_hvp,
ndparams={},
group="testgroup")
group_ndparams = {
- constants.ND_OOB_PROGRAM: "/bin/group-oob"
+ constants.ND_OOB_PROGRAM: "/bin/group-oob",
+ constants.ND_SPINDLE_COUNT: 10,
}
fake_group = objects.NodeGroup(name="testgroup",
ndparams=group_ndparams)
def testFillNdParamsNode(self):
node_ndparams = {
- constants.ND_OOB_PROGRAM: "/bin/node-oob"
+ constants.ND_OOB_PROGRAM: "/bin/node-oob",
+ constants.ND_SPINDLE_COUNT: 2,
}
fake_node = objects.Node(name="test",
ndparams=node_ndparams,
def testFillNdParamsAll(self):
node_ndparams = {
- constants.ND_OOB_PROGRAM: "/bin/node-oob"
+ constants.ND_OOB_PROGRAM: "/bin/node-oob",
+ constants.ND_SPINDLE_COUNT: 5,
}
fake_node = objects.Node(name="test",
ndparams=node_ndparams,
group="testgroup")
group_ndparams = {
- constants.ND_OOB_PROGRAM: "/bin/group-oob"
+ constants.ND_OOB_PROGRAM: "/bin/group-oob",
+ constants.ND_SPINDLE_COUNT: 4,
}
fake_group = objects.NodeGroup(name="testgroup",
ndparams=group_ndparams)
self.assertEqual(node_ndparams,
self.fake_cl.FillND(fake_node, fake_group))
+ def testPrimaryHypervisor(self):
+ assert self.fake_cl.enabled_hypervisors is None
+ self.fake_cl.enabled_hypervisors = [constants.HT_XEN_HVM]
+ self.assertEqual(self.fake_cl.primary_hypervisor, constants.HT_XEN_HVM)
+
+ self.fake_cl.enabled_hypervisors = [constants.HT_XEN_PVM, constants.HT_KVM]
+ self.assertEqual(self.fake_cl.primary_hypervisor, constants.HT_XEN_PVM)
+
+ self.fake_cl.enabled_hypervisors = sorted(constants.HYPER_TYPES)
+ self.assertEqual(self.fake_cl.primary_hypervisor, constants.HT_CHROOT)
+
class TestOS(unittest.TestCase):
ALL_DATA = [