summaryrefslogtreecommitdiffstats
path: root/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk
diff options
context:
space:
mode:
Diffstat (limited to 'cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk')
-rw-r--r--cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/__init__.py0
-rw-r--r--cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/__init__.py0
-rw-r--r--cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/test_nvmf.py131
-rw-r--r--cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/__init__.py0
-rw-r--r--cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/test_vhost.py144
5 files changed, 275 insertions, 0 deletions
diff --git a/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/__init__.py b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/__init__.py
diff --git a/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/__init__.py b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/__init__.py
diff --git a/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/test_nvmf.py b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/test_nvmf.py
new file mode 100644
index 0000000..9f9a5be
--- /dev/null
+++ b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/nvmf/test_nvmf.py
@@ -0,0 +1,131 @@
+# Copyright 2017 Huawei Technologies Co.,LTD.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+from cyborg.tests import base
+import mock
+from cyborg.accelerator.drivers.spdk.nvmf.nvmf import NVMFDRIVER
+from cyborg.accelerator.drivers.spdk.util import common_fun
+from cyborg.accelerator.drivers.spdk.util.pyspdk.nvmf_client import NvmfTgt
+
+
+class TestNVMFDRIVER(base.TestCase):
+
+ def setUp(self,):
+ super(TestNVMFDRIVER, self).setUp()
+ self.nvmf_driver = NVMFDRIVER()
+
+ def tearDown(self):
+ super(TestNVMFDRIVER, self).tearDown()
+ self.vhost_driver = None
+
+ @mock.patch.object(NVMFDRIVER, 'get_one_accelerator')
+ def test_discover_accelerator(self, mock_get_one_accelerator):
+ expect_accelerator = {
+ 'server': 'nvmf',
+ 'bdevs': [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }],
+ 'subsystems': [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ }
+ alive = mock.Mock(return_value=False)
+ self.nvmf_driver.py.is_alive = alive
+ check_error = mock.Mock(return_value=False)
+ common_fun.check_for_setup_error = check_error
+ self.assertFalse(
+ mock_get_one_accelerator.called,
+ "Failed to discover_accelerator if py not alive."
+ )
+ alive = mock.Mock(return_value=True)
+ self.nvmf_driver.py.is_alive = alive
+ check_error = mock.Mock(return_value=True)
+ common_fun.check_for_setup_error = check_error
+ acce_client = NvmfTgt(self.nvmf_driver.py)
+ bdevs_fake = [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }]
+ bdev_list = mock.Mock(return_value=bdevs_fake)
+ acce_client.get_bdevs = bdev_list
+ subsystems_fake = [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ subsystem_list = mock.Mock(return_value=subsystems_fake)
+ acce_client.get_nvmf_subsystems = subsystem_list
+ accelerator_fake = {
+ 'server': self.nvmf_driver.SERVER,
+ 'bdevs': acce_client.get_bdevs(),
+ 'subsystems': acce_client.get_nvmf_subsystems()
+ }
+ success_send = mock.Mock(return_value=accelerator_fake)
+ self.nvmf_driver.get_one_accelerator = success_send
+ accelerator = self.nvmf_driver.discover_accelerator()
+ self.assertEqual(accelerator, expect_accelerator)
+
+ def test_accelerator_list(self):
+ expect_accelerators = [{
+ 'server': 'nvmf',
+ 'bdevs': [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }],
+ 'subsystems':
+ [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ },
+ {
+ 'server': 'nvnf_tgt',
+ 'bdevs': [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }],
+ 'subsystems':
+ [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ }
+ ]
+ success_send = mock.Mock(return_value=expect_accelerators)
+ self.nvmf_driver.get_all_accelerators = success_send
+ self.assertEqual(self.nvmf_driver.accelerator_list(),
+ expect_accelerators)
+
+ def test_install_accelerator(self):
+ pass
+
+ def test_uninstall_accelerator(self):
+ pass
+
+ def test_update(self):
+ pass
+
+ def test_attach_instance(self):
+ pass
+
+ def test_detach_instance(self):
+ pass
+
+ def test_delete_subsystem(self):
+ pass
+
+ def test_construct_subsystem(self):
+ pass
diff --git a/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/__init__.py b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/__init__.py
diff --git a/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/test_vhost.py b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/test_vhost.py
new file mode 100644
index 0000000..3c04b8c
--- /dev/null
+++ b/cyborg_enhancement/mitaka_version/cyborg/cyborg/tests/unit/accelerator/drivers/spdk/vhost/test_vhost.py
@@ -0,0 +1,144 @@
+# Copyright 2017 Huawei Technologies Co.,LTD.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+from cyborg.tests import base
+import mock
+from cyborg.accelerator.drivers.spdk.vhost.vhost import VHOSTDRIVER
+from cyborg.accelerator.drivers.spdk.util import common_fun
+from cyborg.accelerator.drivers.spdk.util.pyspdk.vhost_client import VhostTgt
+
+
+class TestVHOSTDRIVER(base.TestCase):
+
+ def setUp(self):
+ super(TestVHOSTDRIVER, self).setUp()
+ self.vhost_driver = VHOSTDRIVER()
+
+ def tearDown(self):
+ super(TestVHOSTDRIVER, self).tearDown()
+ self.vhost_driver = None
+
+ @mock.patch.object(VHOSTDRIVER, 'get_one_accelerator')
+ def test_discover_accelerator(self, mock_get_one_accelerator):
+ expect_accelerator = {
+ 'server': 'vhost',
+ 'bdevs': [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }],
+ 'scsi_devices': [],
+ 'luns': [{"claimed": True,
+ "name": "Malloc0"}],
+ 'interfaces': [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ }
+ alive = mock.Mock(return_value=True)
+ self.vhost_driver.py.is_alive = alive
+ check_error = mock.Mock(return_value=True)
+ common_fun.check_for_setup_error = check_error
+ self.assertFalse(
+ mock_get_one_accelerator.called,
+ "Failed to discover_accelerator if py not alive."
+ )
+ acce_client = VhostTgt(self.vhost_driver.py)
+ bdevs_fake = [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }]
+ bdev_list = mock.Mock(return_value=bdevs_fake)
+ acce_client.get_bdevs = bdev_list
+ scsi_devices_fake = []
+ scsi_device_list = mock.Mock(return_value=scsi_devices_fake)
+ acce_client.get_scsi_devices = scsi_device_list
+ luns_fake = [{"claimed": True,
+ "name": "Malloc0"}]
+ lun_list = mock.Mock(return_value=luns_fake)
+ acce_client.get_luns = lun_list
+ interfaces_fake = \
+ [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ interface_list = mock.Mock(return_value=interfaces_fake)
+ acce_client.get_interfaces = interface_list
+ accelerator_fake = {
+ 'server': self.vhost_driver.SERVER,
+ 'bdevs': acce_client.get_bdevs(),
+ 'scsi_devices': acce_client.get_scsi_devices(),
+ 'luns': acce_client.get_luns(),
+ 'interfaces': acce_client.get_interfaces()
+ }
+ success_send = mock.Mock(return_value=accelerator_fake)
+ self.vhost_driver.get_one_accelerator = success_send
+ accelerator = self.vhost_driver.discover_accelerator()
+ self.assertEqual(accelerator, expect_accelerator)
+
+ def test_accelerator_list(self):
+ expect_accelerators = [{
+ 'server': 'vhost',
+ 'bdevs': [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }],
+ 'scsi_devices': [],
+ 'luns': [{"claimed": True,
+ "name": "Malloc0"}],
+ 'interfaces': [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ },
+ {
+ 'server': 'vhost_tgt',
+ 'bdevs': [{"num_blocks": 131072,
+ "name": "nvme1",
+ "block_size": 512
+ }],
+ 'scsi_devices': [],
+ 'luns': [{"claimed": True,
+ "name": "Malloc0"}],
+ 'interfaces': [{"core": 0,
+ "nqn": "nqn.2018-01.org.nvmexpress.discovery",
+ "hosts": []
+ }]
+ }
+ ]
+ success_send = mock.Mock(return_value=expect_accelerators)
+ self.vhost_driver.get_all_accelerators = success_send
+ self.assertEqual(self.vhost_driver.accelerator_list(),
+ expect_accelerators)
+
+ def test_install_accelerator(self):
+ pass
+
+ def test_uninstall_accelerator(self):
+ pass
+
+ def test_update(self):
+ pass
+
+ def test_attach_instance(self):
+ pass
+
+ def test_detach_instance(self):
+ pass
+
+ def test_delete_ip_address(self):
+ pass
+
+ def test_add_ip_address(self):
+ pass