summaryrefslogtreecommitdiff
path: root/openstackclient/tests/unit/volume
diff options
context:
space:
mode:
authorHuanxuan Ao <huanxuan.ao@easystack.cn>2017-03-08 10:01:16 +0800
committerDean Troyer <dtroyer@gmail.com>2017-04-26 11:07:08 -0500
commit1c49a1f01da73b8eed701809de88b408e738dfed (patch)
treedecfdfb36d616d70d40e98b534ff93ea5390aecc /openstackclient/tests/unit/volume
parentbf1f47c1be5bf9f6b25eab21eb06c3b0473bf34f (diff)
downloadpython-openstackclient-1c49a1f01da73b8eed701809de88b408e738dfed.tar.gz
Fix NoneType error for volume snapshot create command
In volume snapshot command, <volume> is the same as <snapshot-name> when --volume is not specified, but <volume> cannot be None, so when <snapshot-name> is not specified (<snapshot-name> is None), a NoneType error appears. So make <snapshot-name> no longer optional, it should be always present. Change-Id: I3d9f10753a8ef601e70816421c160598e2cc811f Closes-bug: #1659894
Diffstat (limited to 'openstackclient/tests/unit/volume')
-rw-r--r--openstackclient/tests/unit/volume/v1/test_snapshot.py22
-rw-r--r--openstackclient/tests/unit/volume/v2/test_snapshot.py29
2 files changed, 18 insertions, 33 deletions
diff --git a/openstackclient/tests/unit/volume/v1/test_snapshot.py b/openstackclient/tests/unit/volume/v1/test_snapshot.py
index 87a62b0a..70b55ce2 100644
--- a/openstackclient/tests/unit/volume/v1/test_snapshot.py
+++ b/openstackclient/tests/unit/volume/v1/test_snapshot.py
@@ -18,6 +18,7 @@ from mock import call
from osc_lib import exceptions
from osc_lib import utils
+from openstackclient.tests.unit import utils as tests_utils
from openstackclient.tests.unit.volume.v1 import fakes as volume_fakes
from openstackclient.volume.v1 import volume_snapshot
@@ -98,26 +99,17 @@ class TestSnapshotCreate(TestSnapshot):
def test_snapshot_create_without_name(self):
arglist = [
"--volume", self.new_snapshot.volume_id,
- "--description", self.new_snapshot.display_description,
- "--force"
]
verifylist = [
("volume", self.new_snapshot.volume_id),
- ("description", self.new_snapshot.display_description),
- ("force", True)
]
- parsed_args = self.check_parser(self.cmd, arglist, verifylist)
-
- columns, data = self.cmd.take_action(parsed_args)
-
- self.snapshots_mock.create.assert_called_with(
- self.new_snapshot.volume_id,
- True,
- None,
- self.new_snapshot.display_description,
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
)
- self.assertEqual(self.columns, columns)
- self.assertEqual(self.data, data)
def test_snapshot_create_without_volume(self):
arglist = [
diff --git a/openstackclient/tests/unit/volume/v2/test_snapshot.py b/openstackclient/tests/unit/volume/v2/test_snapshot.py
index 1ad97e85..16d0602b 100644
--- a/openstackclient/tests/unit/volume/v2/test_snapshot.py
+++ b/openstackclient/tests/unit/volume/v2/test_snapshot.py
@@ -20,6 +20,7 @@ from osc_lib import exceptions
from osc_lib import utils
from openstackclient.tests.unit.identity.v3 import fakes as project_fakes
+from openstackclient.tests.unit import utils as tests_utils
from openstackclient.tests.unit.volume.v2 import fakes as volume_fakes
from openstackclient.volume.v2 import volume_snapshot
@@ -107,27 +108,17 @@ class TestSnapshotCreate(TestSnapshot):
def test_snapshot_create_without_name(self):
arglist = [
"--volume", self.new_snapshot.volume_id,
- "--description", self.new_snapshot.description,
- "--force"
]
verifylist = [
("volume", self.new_snapshot.volume_id),
- ("description", self.new_snapshot.description),
- ("force", True)
]
- parsed_args = self.check_parser(self.cmd, arglist, verifylist)
-
- columns, data = self.cmd.take_action(parsed_args)
-
- self.snapshots_mock.create.assert_called_with(
- self.new_snapshot.volume_id,
- force=True,
- name=None,
- description=self.new_snapshot.description,
- metadata=None,
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
)
- self.assertEqual(self.columns, columns)
- self.assertEqual(self.data, data)
def test_snapshot_create_without_volume(self):
arglist = [
@@ -156,17 +147,19 @@ class TestSnapshotCreate(TestSnapshot):
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
- def test_snapshot_create_without_remote_source(self):
+ def test_snapshot_create_with_remote_source(self):
arglist = [
'--remote-source', 'source-name=test_source_name',
'--remote-source', 'source-id=test_source_id',
'--volume', self.new_snapshot.volume_id,
+ self.new_snapshot.name,
]
ref_dict = {'source-name': 'test_source_name',
'source-id': 'test_source_id'}
verifylist = [
('remote_source', ref_dict),
('volume', self.new_snapshot.volume_id),
+ ("snapshot_name", self.new_snapshot.name),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -175,7 +168,7 @@ class TestSnapshotCreate(TestSnapshot):
self.snapshots_mock.manage.assert_called_with(
volume_id=self.new_snapshot.volume_id,
ref=ref_dict,
- name=None,
+ name=self.new_snapshot.name,
description=None,
metadata=None,
)