コード例 #1
0
 def test_create_volume_group_snapshot_bad_status(self, mock_is_cg,
                                                  mock_get_id, mock_create):
     mock_create.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.create_group_snapshot,
                               self.context, self.group_snapshot, [])
     self.assertIn("Failed to create snapshot", error.msg)
コード例 #2
0
 def test_create_volume_from_source_bad_status(self, mock_create_request):
     mock_create_request.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(
         exception.VolumeBackendAPIException,
         self.driver.adapter.create_volume_from_source, self.volume,
         self.source_volume)
     self.assertIn("Failed to create clone", error.msg)
コード例 #3
0
 def test_delete_volume_detach_not_found(self, mock_delete,
                                         mock_mapped_hosts,
                                         mock_detach_request):
     mock_mapped_hosts.return_value = ["fake_host_id"]
     mock_detach_request.return_value = powerstore.MockResponse(content={},
                                                                rc=404)
     self.driver.delete_volume(self.volume)
コード例 #4
0
 def test_create_volume_group_bad_status(self, mock_is_cg,
                                         mock_create_request):
     mock_create_request.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.create_group, self.context,
                               self.group)
     self.assertIn("Failed to create PowerStore volume group", error.msg)
コード例 #5
0
 def test_extend_volume_bad_status(self, mock_extend_request):
     mock_extend_request.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.extend_volume,
                               self.volume,
                               16)
     self.assertIn("Failed to extend PowerStore volume", error.msg)
コード例 #6
0
 def test_delete_volume_group_bad_status(self, mock_is_cg, mock_get_id,
                                         mock_delete):
     mock_delete.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.delete_group, self.context,
                               self.group, [])
     self.assertIn("Failed to delete PowerStore volume group", error.msg)
コード例 #7
0
 def test_delete_snapshot_bad_status(self, mock_delete):
     mock_delete.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(
         exception.VolumeBackendAPIException,
         self.driver.delete_snapshot,
         self.snapshot
     )
     self.assertIn("Failed to delete PowerStore snapshot", error.msg)
コード例 #8
0
ファイル: test_base.py プロジェクト: xin3liang/cinder
 def test_update_volume_stats_bad_status(self, mock_metrics,
                                         mock_appliance):
     mock_appliance.return_value = "A1"
     mock_metrics.return_value = powerstore.MockResponse(rc=400)
     self.driver.check_for_setup_error()
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver._update_volume_stats)
     self.assertIn("Failed to query metrics", error.msg)
コード例 #9
0
 def test_delete_volume_detach_bad_status(self, mock_delete,
                                          mock_mapped_hosts,
                                          mock_detach_request):
     mock_mapped_hosts.return_value = ["fake_host_id"]
     mock_detach_request.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.delete_volume, self.volume)
     self.assertIn("Failed to detach PowerStore volume", error.msg)
コード例 #10
0
 def test_create_snapshot_bad_status(self, mock_create_request):
     mock_create_request.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(
         exception.VolumeBackendAPIException,
         self.driver.create_snapshot,
         self.snapshot
     )
     self.assertIn("Failed to create snapshot", error.msg)
コード例 #11
0
 def test_revert_to_snapshot_bad_status(self, mock_revert):
     mock_revert.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(
         exception.VolumeBackendAPIException,
         self.driver.revert_to_snapshot,
         {},
         self.volume,
         self.snapshot
     )
     self.assertIn("Failed to restore PowerStore volume", error.msg)
コード例 #12
0
 def test_delete_volume_detach_not_mapped(self, mock_delete,
                                          mock_mapped_hosts,
                                          mock_detach_request):
     mock_mapped_hosts.return_value = ["fake_host_id"]
     mock_detach_request.return_value = powerstore.MockResponse(content={
         "messages": [
             {
                 "code": client.VOLUME_NOT_MAPPED_ERROR,
             },
         ],
     },
                                                                rc=422)
     self.driver.delete_volume(self.volume)
コード例 #13
0
ファイル: test_replication.py プロジェクト: openstack/cinder
 def test_failover_volume_failover_error(self, mock_rep_session,
                                         mock_failover, mock_wait_failover):
     mock_wait_failover.return_value = powerstore.MockResponse(content={
         "state":
         "FAILED",
         "response_body":
         None,
     },
                                                               rc=200)
     updates = self.driver.adapter.failover_volume(self.volume,
                                                   is_failback=False)
     self.assertEqual(self.volume.id, updates["volume_id"])
     self.assertEqual(fields.ReplicationStatus.FAILOVER_ERROR,
                      updates["updates"]["replication_status"])
コード例 #14
0
ファイル: test_replication.py プロジェクト: openstack/cinder
 def test_failover_volume_already_failed_over(self, mock_rep_session,
                                              mock_failover,
                                              mock_wait_failover):
     mock_wait_failover.return_value = powerstore.MockResponse(content={
         "response_body": {
             "messages": [
                 {
                     "code": client.SESSION_ALREADY_FAILED_OVER_ERROR,
                 },
             ],
         },
     },
                                                               rc=200)
     updates = self.driver.adapter.failover_volume(self.volume,
                                                   is_failback=False)
     self.assertIsNone(updates)
コード例 #15
0
 def test_delete_volume_not_found(self, mock_delete_request, mock_detach):
     mock_delete_request.return_value = powerstore.MockResponse(rc=404)
     self.driver.delete_volume(self.volume)
コード例 #16
0
 def test_update_volume_group_add_volumes_bad_status(
         self, mock_is_cg, mock_get_vg_id, mock_add_volumes):
     mock_add_volumes.return_value = powerstore.MockResponse(rc=400)
     self.assertRaises(exception.VolumeBackendAPIException,
                       self.driver.update_group, self.context, self.group,
                       [self.volume1], [])
コード例 #17
0
 def test_delete_volume_bad_status(self, mock_delete, mock_detach):
     mock_delete.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.delete_volume,
                               self.volume)
     self.assertIn("Failed to delete PowerStore volume", error.msg)
コード例 #18
0
ファイル: test_base.py プロジェクト: xin3liang/cinder
 def test_configuration_appliance_bad_status(self, mock_get_request):
     mock_get_request.return_value = powerstore.MockResponse(rc=400)
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.check_for_setup_error)
     self.assertIn("Failed to query PowerStore appliances.", error.msg)
コード例 #19
0
ファイル: test_base.py プロジェクト: xin3liang/cinder
 def test_configuration_appliance_not_found(self, mock_get_request):
     mock_get_request.return_value = powerstore.MockResponse()
     error = self.assertRaises(exception.VolumeBackendAPIException,
                               self.driver.check_for_setup_error)
     self.assertIn("not found", error.msg)