@@ -4132,42 +4132,6 @@ def test_get_bdm_image_metadata_with_cinder_down(self, mock_get):
4132
4132
self .context ,
4133
4133
bdms , legacy_bdm = True )
4134
4134
4135
- @mock .patch .object (cinder .API , 'get' )
4136
- @mock .patch .object (cinder .API , 'attachment_create' ,
4137
- side_effect = exception .InvalidInput (reason = 'error' ))
4138
- def test_validate_bdm_with_error_volume (self , mock_attach_create ,
4139
- mock_get ):
4140
- # Tests that an InvalidInput exception raised from
4141
- # volume_api.reserve_volume due to the volume status not being
4142
- # 'available' results in _validate_bdm re-raising InvalidVolume.
4143
- instance = self ._create_instance_obj ()
4144
- del instance .id
4145
- instance_type = self ._create_flavor ()
4146
- volume_id = 'e856840e-9f5b-4894-8bde-58c6e29ac1e8'
4147
- volume_info = {'status' : 'error' ,
4148
- 'attach_status' : 'detached' ,
4149
- 'id' : volume_id ,
4150
- 'multiattach' : False }
4151
- mock_get .return_value = volume_info
4152
- bdms = [objects .BlockDeviceMapping (
4153
- ** fake_block_device .FakeDbBlockDeviceDict (
4154
- {
4155
- 'boot_index' : 0 ,
4156
- 'volume_id' : volume_id ,
4157
- 'source_type' : 'volume' ,
4158
- 'destination_type' : 'volume' ,
4159
- 'device_name' : 'vda' ,
4160
- }))]
4161
-
4162
- self .assertRaises (exception .InvalidVolume ,
4163
- self .compute_api ._validate_bdm ,
4164
- self .context ,
4165
- instance , instance_type , bdms )
4166
-
4167
- mock_get .assert_called_once_with (self .context , volume_id )
4168
- mock_attach_create .assert_called_once_with (
4169
- self .context , volume_id , instance .uuid )
4170
-
4171
4135
@mock .patch .object (cinder .API , 'get_snapshot' ,
4172
4136
side_effect = exception .CinderConnectionFailed (reason = 'error' ))
4173
4137
@mock .patch .object (cinder .API , 'get' ,
@@ -4444,25 +4408,12 @@ def test_provision_instances_with_cinder_down(self, mock_get):
4444
4408
self ._test_provision_instances_with_cinder_error (
4445
4409
expected_exception = exception .CinderConnectionFailed )
4446
4410
4447
- @mock .patch .object (cinder .API , 'get' ,
4448
- return_value = {'id' : '1' , 'multiattach' : False })
4449
- @mock .patch .object (cinder .API , 'check_availability_zone' )
4450
- @mock .patch .object (cinder .API , 'attachment_create' ,
4451
- side_effect = exception .InvalidInput (reason = 'error' ))
4452
- def test_provision_instances_with_error_volume (self ,
4453
- mock_cinder_check_av_zone ,
4454
- mock_reserve_volume ,
4455
- mock_get ):
4456
- self ._test_provision_instances_with_cinder_error (
4457
- expected_exception = exception .InvalidVolume )
4458
-
4459
- @mock .patch .object (cinder .API , 'get' ,
4460
- return_value = {'id' : '1' , 'multiattach' : False })
4461
- @mock .patch .object (cinder .API , 'check_availability_zone' )
4462
- @mock .patch .object (cinder .API , 'attachment_create' ,
4463
- side_effect = exception .InvalidInput (reason = 'error' ))
4464
- def test_provision_instances_with_error_volume_new_flow (self ,
4465
- mock_cinder_check_av_zone , mock_attach_create , mock_get ):
4411
+ @mock .patch .object (cinder .API , 'get' , new = mock .Mock (
4412
+ return_value = {'id' : '1' , 'multiattach' : False }))
4413
+ @mock .patch .object (cinder .API , 'check_availability_zone' , new = mock .Mock ())
4414
+ @mock .patch .object (cinder .API , 'attachment_create' , new = mock .Mock (
4415
+ side_effect = exception .InvalidInput (reason = 'error' )))
4416
+ def test_provision_instances_with_error_volume (self ):
4466
4417
self ._test_provision_instances_with_cinder_error (
4467
4418
expected_exception = exception .InvalidVolume )
4468
4419
0 commit comments