volume_id = utils.create_volume(self.context, size=2)['id']
+ body = ('<backup display_name="backup-001" '
+ 'display_description="Nightly Backup" '
+ 'volume_id="%s" container="Container001"/>' % volume_id)
+ if isinstance(body, six.text_type):
+ body = body.encode('utf-8')
+
req = webob.Request.blank('/v2/fake/backups')
- req.body = ('<backup display_name="backup-001" '
- 'display_description="Nightly Backup" '
- 'volume_id="%s" container="Container001"/>' % volume_id)
+ req.body = body
req.method = 'POST'
req.headers['Content-Type'] = 'application/xml'
req.headers['Accept'] = 'application/xml'
size=2,
display_name=volume_name)['id']
+ body = '<restore volume_id="%s"/>' % volume_id
+ if isinstance(body, six.text_type):
+ body = body.encode('utf-8')
+
req = webob.Request.blank('/v2/fake/backups/%s/restore' % backup_id)
- req.body = '<restore volume_id="%s"/>' % volume_id
+ req.body = body
req.method = 'POST'
req.headers['Content-Type'] = 'application/xml'
req.headers['Accept'] = 'application/xml'
_mock_import_record_rpc.return_value = None
_mock_list_services.return_value = [backup_service]
- req = webob.Request.blank('/v2/fake/backups/import_record')
if six.PY2:
backup_url = backup_url.encode('utf-8')
- req.body = ('<backup-record backup_service="%(backup_service)s" '
- 'backup_url="%(backup_url)s"/>') \
- % {'backup_url': backup_url,
- 'backup_service': backup_service}
+ body = ('<backup-record backup_service="%(backup_service)s" '
+ 'backup_url="%(backup_url)s"/>'
+ % {'backup_url': backup_url,
+ 'backup_service': backup_service})
+ if isinstance(body, six.text_type):
+ body = body.encode('utf-8')
+ req = webob.Request.blank('/v2/fake/backups/import_record')
+ req.body = body
req.method = 'POST'
req.headers['Content-Type'] = 'application/xml'
req.headers['Accept'] = 'application/xml'
import mock
from oslo_config import cfg
from oslo_serialization import jsonutils
+import six
import webob
from cinder import context
body = '<os-%s-replica/>' % operation
req.headers['Content-Type'] = 'application/xml'
req.headers['Accept'] = 'application/xml'
+ if isinstance(body, six.text_type):
+ body = body.encode('utf-8')
req.body = body
else:
body = {'os-%s-replica' % operation: ''}
def test_promote_bad_id(self):
(req, res) = self._get_resp('promote', 'fake')
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(404, res.status_int, msg)
def test_promote_bad_id_xml(self):
(req, res) = self._get_resp('promote', 'fake', xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(404, res.status_int, msg)
def test_promote_volume_not_replicated(self):
self.ctxt,
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
def test_promote_volume_not_replicated_xml(self):
self.ctxt,
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
@mock.patch('cinder.volume.rpcapi.VolumeAPI.promote_replica')
replication_status = 'active',
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
for status in ['available']:
replication_status = 'active',
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(202, res.status_int, msg)
@mock.patch('cinder.volume.rpcapi.VolumeAPI.promote_replica')
replication_status = 'active',
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
for status in ['available']:
replication_status = 'active',
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(202, res.status_int, msg)
@mock.patch('cinder.volume.rpcapi.VolumeAPI.promote_replica')
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
for status in ['active', 'active-stopped']:
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(202, res.status_int, msg)
@mock.patch('cinder.volume.rpcapi.VolumeAPI.promote_replica')
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
for status in ['active', 'active-stopped']:
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('promote', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(202, res.status_int, msg)
def test_reenable_bad_id(self):
(req, res) = self._get_resp('reenable', 'fake')
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(404, res.status_int, msg)
def test_reenable_bad_id_xml(self):
(req, res) = self._get_resp('reenable', 'fake', xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(404, res.status_int, msg)
def test_reenable_volume_not_replicated(self):
self.ctxt,
**self.volume_params)
(req, res) = self._get_resp('reenable', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
def test_reenable_volume_not_replicated_xml(self):
self.ctxt,
**self.volume_params)
(req, res) = self._get_resp('reenable', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
@mock.patch('cinder.volume.rpcapi.VolumeAPI.reenable_replication')
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('reenable', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
for status in ['inactive', 'active-stopped', 'error']:
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('reenable', volume['id'])
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(202, res.status_int, msg)
@mock.patch('cinder.volume.rpcapi.VolumeAPI.reenable_replication')
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('reenable', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(400, res.status_int, msg)
for status in ['inactive', 'active-stopped', 'error']:
replication_status = status,
**self.volume_params)
(req, res) = self._get_resp('reenable', volume['id'], xml=True)
- msg = ("request: %s\nresult: %s" % (req, res))
+ msg = ("request: %r\nresult: %r" % (req, res))
self.assertEqual(202, res.status_int, msg)