diff options
author | kballou <kballou@devnulllabs.io> | 2015-04-10 16:33:00 -0600 |
---|---|---|
committer | kballou <kballou@devnulllabs.io> | 2015-04-10 18:03:44 -0600 |
commit | 33bbd38435d91fb10b02d534fabd8ba60351e9cb (patch) | |
tree | 9984f6c748e34949a5286f8b6479d714872481ad | |
parent | 8ab32b6d18ee267dd7adfcf23dc96f03b5bcfcff (diff) | |
download | pylibchorus-33bbd38435d91fb10b02d534fabd8ba60351e9cb.tar.gz pylibchorus-33bbd38435d91fb10b02d534fabd8ba60351e9cb.tar.xz |
Add _create_workfile_ method
-rw-r--r-- | pylibchorus/chorus_client.py | 18 | ||||
-rw-r--r-- | pylibchorus/tests/chorus_client_tests.py | 28 |
2 files changed, 46 insertions, 0 deletions
diff --git a/pylibchorus/chorus_client.py b/pylibchorus/chorus_client.py index dbacea9..822420f 100644 --- a/pylibchorus/chorus_client.py +++ b/pylibchorus/chorus_client.py @@ -91,3 +91,21 @@ def _logout_(sid, cookies): 'url': '/sessions', 'method': 'DELETE', } + +def _create_workfile_(workspace_id, workfile_name, sid, cookies): + '''Create request data for workfile creation''' + return { + 'data': { + 'workspace_id': workspace_id, + 'file_name': workfile_name, + }, + 'headers': { + 'content-type': CONTENT_TYPE, + }, + 'params': { + 'session_id': sid, + }, + 'cookies': cookies, + 'url': '/workspaces/%s/workfiles' % workspace_id, + 'method': 'POST', + } diff --git a/pylibchorus/tests/chorus_client_tests.py b/pylibchorus/tests/chorus_client_tests.py index 25e244f..f4f2998 100644 --- a/pylibchorus/tests/chorus_client_tests.py +++ b/pylibchorus/tests/chorus_client_tests.py @@ -5,6 +5,7 @@ import logging from pylibchorus.chorus_client import _login_ from pylibchorus.chorus_client import _logout_ from pylibchorus.chorus_client import _check_login_ +from pylibchorus.chorus_client import _create_workfile_ import unittest LOG = logging.getLogger(__name__) @@ -100,3 +101,30 @@ class ChorusSessionTests(unittest.TestCase): self.assertEquals(cookies, actual['cookies']) self.assertEquals('/sessions', actual['url']) self.assertEquals('GET', actual['method']) + + #pylint: disable=C0103 + def test_create_workfile_returns_request_data(self): + '''Test _create_workfile_ returns correct request data''' + workspace_id = 1 + workfile_name = 'foo' + sid = 'foobar' + cookies = {'session_id': sid} + actual = _create_workfile_(workspace_id, workfile_name, sid, cookies) + check_request_structure(self, actual) + self.assertIsNotNone(actual['data']) + self.assertIsNotNone(actual['headers']) + self.assertIsNotNone(actual['params']) + self.assertIsNotNone(actual['cookies']) + self.assertIsNotNone(actual['url']) + self.assertIsNotNone(actual['method']) + data = actual['data'] + self.assertIn('workspace_id', data) + self.assertIn('file_name', data) + self.assertEquals(workspace_id, data['workspace_id']) + self.assertEquals(workfile_name, data['file_name']) + check_header(self, actual['headers']) + check_params(self, actual['params'], sid) + self.assertEquals(cookies, actual['cookies']) + self.assertEquals('/workspaces/%d/workfiles' % workspace_id, + actual['url']) + self.assertEquals('POST', actual['method']) |