Enforce content-type in request headers

Implements Blueprint: contenttype
Change-Id: I7b407d29952090d88a4cd5900a814f651ffdf348
This commit is contained in:
Memo Garcia 2016-06-01 11:56:40 +01:00 committed by Saad Zaher
parent bb9871106d
commit 63accdeac5
11 changed files with 33 additions and 12 deletions

View File

@ -34,7 +34,8 @@ class TestActionManager(unittest.TestCase):
@patch('freezerclient.v1.managers.actions.requests')
def test_create(self, mock_requests):
self.assertEqual('http://testendpoint:9999/v1/actions/', self.action_manager.endpoint)
self.assertEqual({'X-Auth-Token': 'testtoken'}, self.action_manager.headers)
self.assertEqual({'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'},
self.action_manager.headers)
@patch('freezerclient.v1.managers.actions.requests')
def test_create_ok(self, mock_requests):

View File

@ -32,7 +32,8 @@ class TestBackupManager(unittest.TestCase):
@patch('freezerclient.v1.managers.backups.requests')
def test_create(self, mock_requests):
self.assertEqual('http://testendpoint:9999/v1/backups/', self.b.endpoint)
self.assertEqual({'X-Auth-Token': 'testtoken'}, self.b.headers)
self.assertEqual({'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'},
self.b.headers)
@patch('freezerclient.v1.managers.backups.requests')
def test_create_ok(self, mock_requests):
@ -114,7 +115,7 @@ class TestBackupManager(unittest.TestCase):
'http://testendpoint:9999/v1/backups/',
params={'limit': 5, 'offset': 5},
data='{"time_before": 1428529956}',
headers={'X-Auth-Token': 'testtoken'},
headers={'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'},
verify=True)
self.assertEqual(backup_list, retval)

View File

@ -31,7 +31,8 @@ class TestClientManager(unittest.TestCase):
@patch('freezerclient.v1.managers.clients.requests')
def test_create(self, mock_requests):
self.assertEqual('http://testendpoint:9999/v1/clients/', self.r.endpoint)
self.assertEqual({'X-Auth-Token': 'testtoken'}, self.r.headers)
self.assertEqual({'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'},
self.r.headers)
@patch('freezerclient.v1.managers.clients.requests')
def test_create_ok(self, mock_requests):

View File

@ -28,14 +28,15 @@ class TestJobManager(unittest.TestCase):
self.mock_response = Mock()
self.mock_client.endpoint = 'http://testendpoint:9999'
self.mock_client.auth_token = 'testtoken'
self.headers = {'X-Auth-Token': 'testtoken'}
self.headers = {'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'}
self.mock_client.client_id = 'test_client_id_78900987'
self.job_manager = jobs.JobManager(self.mock_client)
@patch('freezerclient.v1.managers.jobs.requests')
def test_create(self, mock_requests):
self.assertEqual('http://testendpoint:9999/v1/jobs/', self.job_manager.endpoint)
self.assertEqual({'X-Auth-Token': 'testtoken'}, self.job_manager.headers)
self.assertEqual({'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'},
self.job_manager.headers)
@patch('freezerclient.v1.managers.jobs.requests')
def test_create_ok(self, mock_requests):

View File

@ -31,7 +31,7 @@ class TestSessionManager(unittest.TestCase):
self.mock_client.client_id = 'test_client_id_78900987'
self.session_manager = sessions.SessionManager(self.mock_client)
self.endpoint = 'http://testendpoint:9999/v1/sessions/'
self.headers = {'X-Auth-Token': 'testtoken'}
self.headers = {'X-Auth-Token': 'testtoken', 'Content-Type': 'application/json'}
@patch('freezerclient.v1.managers.sessions.requests')
def test_create(self, mock_requests):

View File

@ -117,3 +117,15 @@ def doc_from_json_file(path_to_file):
except Exception as err:
logging.error(err)
raise Exception('Unable to load conf file. {0}'.format(err))
def create_headers_for_request(token):
"""Create a header dict to be passed to the api.
:param token: token string coming from the api
:return: a dict containing all the headers for a request
"""
return {
'X-Auth-Token': token,
'Content-Type': 'application/json'
}

View File

@ -16,6 +16,7 @@ import json
import requests
from freezerclient import exceptions
from freezerclient.utils import create_headers_for_request
class ActionManager(object):
@ -27,7 +28,7 @@ class ActionManager(object):
@property
def headers(self):
return {'X-Auth-Token': self.client.auth_token}
return create_headers_for_request(self.client.auth_token)
def create(self, doc, action_id=''):
action_id = action_id or doc.get('action_id', '')

View File

@ -16,6 +16,7 @@ import json
import requests
from freezerclient import exceptions
from freezerclient.utils import create_headers_for_request
class BackupsManager(object):
@ -27,7 +28,7 @@ class BackupsManager(object):
@property
def headers(self):
return {'X-Auth-Token': self.client.auth_token}
return create_headers_for_request(self.client.auth_token)
def create(self, backup_metadata):
r = requests.post(self.endpoint,

View File

@ -16,6 +16,7 @@ import json
import requests
from freezerclient import exceptions
from freezerclient.utils import create_headers_for_request
class ClientManager(object):
@ -27,7 +28,7 @@ class ClientManager(object):
@property
def headers(self):
return {'X-Auth-Token': self.client.auth_token}
return create_headers_for_request(self.client.auth_token)
def create(self, client_info):
r = requests.post(self.endpoint,

View File

@ -16,6 +16,7 @@ import json
import requests
from freezerclient import exceptions
from freezerclient.utils import create_headers_for_request
class JobManager(object):
@ -27,7 +28,7 @@ class JobManager(object):
@property
def headers(self):
return {'X-Auth-Token': self.client.auth_token}
return create_headers_for_request(self.client.auth_token)
def create(self, doc, job_id=''):
job_id = job_id or doc.get('job_id', '')

View File

@ -16,6 +16,7 @@ import json
import requests
from freezerclient import exceptions
from freezerclient.utils import create_headers_for_request
class SessionManager(object):
@ -27,7 +28,7 @@ class SessionManager(object):
@property
def headers(self):
return {'X-Auth-Token': self.client.auth_token}
return create_headers_for_request(self.client.auth_token)
def create(self, doc, session_id=''):
session_id = session_id or doc.get('session_id', '')