summaryrefslogtreecommitdiffstats
path: root/nova/tests
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-08-24 15:58:36 +0000
committerGerrit Code Review <review@openstack.org>2012-08-24 15:58:36 +0000
commit96ded530c2fe814f779af5db575fa2f196bf38f3 (patch)
treef2c4fe4f1f19d6fe01a5d937ac155979e773c689 /nova/tests
parentaf687ffb04021e2aa6daf9a876d18c32d6ad3d3f (diff)
parentff17c6fd898403da58c30672fe0276be75f410e3 (diff)
Merge "XCP-XAPI version fix"
Diffstat (limited to 'nova/tests')
-rw-r--r--nova/tests/test_xenapi.py63
1 files changed, 63 insertions, 0 deletions
diff --git a/nova/tests/test_xenapi.py b/nova/tests/test_xenapi.py
index 5ab059d07..7dab9bbc1 100644
--- a/nova/tests/test_xenapi.py
+++ b/nova/tests/test_xenapi.py
@@ -2534,3 +2534,66 @@ class XenAPIInjectMetadataTestCase(stubs.XenAPITestBase):
'vm-data/user-metadata/c': '3',
},
})
+
+
+class VMOpsTestCase(test.TestCase):
+ def _get_mock_session(self, product_brand, product_version):
+ class Mock(object):
+ pass
+
+ mock_session = Mock()
+ mock_session.product_brand = product_brand
+ mock_session.product_version = product_version
+
+ return mock_session
+
+ def test_check_resize_func_name_defaults_to_VDI_resize(self):
+ session = self._get_mock_session(None, None)
+ ops = vmops.VMOps(session)
+
+ self.assertEquals(
+ 'VDI.resize',
+ ops.check_resize_func_name())
+
+
+class XenAPISessionTestCase(test.TestCase):
+ def _get_mock_xapisession(self, software_version):
+ class XcpXapiSession(xenapi_conn.XenAPISession):
+ def __init__(_ignore):
+ "Skip the superclass's dirty init"
+
+ def _get_software_version(_ignore):
+ return software_version
+
+ return XcpXapiSession()
+
+ def test_get_product_version_product_brand_does_not_fail(self):
+ session = self._get_mock_xapisession({
+ 'build_number': '0',
+ 'date': '2012-08-03',
+ 'hostname': 'komainu',
+ 'linux': '3.2.0-27-generic',
+ 'network_backend': 'bridge',
+ 'platform_name': 'XCP_Kronos',
+ 'platform_version': '1.6.0',
+ 'xapi': '1.3',
+ 'xen': '4.1.2',
+ 'xencenter_max': '1.10',
+ 'xencenter_min': '1.10'
+ })
+
+ self.assertEquals(
+ (None, None),
+ session._get_product_version_and_brand()
+ )
+
+ def test_get_product_version_product_brand_xs_6(self):
+ session = self._get_mock_xapisession({
+ 'product_brand': 'XenServer',
+ 'product_version': '6.0.50'
+ })
+
+ self.assertEquals(
+ ((6, 0, 50), 'XenServer'),
+ session._get_product_version_and_brand()
+ )