Fixed order of arguments in assertEqual

Some tests used incorrect order of arguments in
assertEqual(observed, expected). The correct order expected
by testtool is assertEqual(expected, observed).

Change-Id: Icd94255bacef672abc7cd1da1d4e2e1cb1a13088
This commit is contained in:
sudhir_agarwal
2017-07-21 15:20:13 +05:30
parent a130c988ec
commit 01ed5a11f2
16 changed files with 116 additions and 116 deletions

View File

@@ -37,10 +37,10 @@ class TestCapabilities(StorletBaseFunctionalTest):
self.assertIn('storlet_handler', info)
options = info['storlet_handler']
# TODO(eranr): take values from conf
self.assertEqual(options['storlet_dependency'], 'dependency')
self.assertEqual(options['storlet_container'], 'storlet')
self.assertEqual(options['storlet_gateway_class'],
'StorletGatewayDocker')
self.assertEqual('dependency', options['storlet_dependency'])
self.assertEqual('storlet', options['storlet_container'])
self.assertEqual('StorletGatewayDocker',
options['storlet_gateway_class'])
if __name__ == '__main__':

View File

@@ -52,7 +52,7 @@ class TestSetACL(StorletBaseFunctionalTest):
read_acl = headers['x-container-read']
expected_acl = ('adam,.r:storlets'
'.john_mystorlet-1.0.jar')
self.assertEqual(read_acl, expected_acl)
self.assertEqual(expected_acl, read_acl)
if __name__ == '__main__':

View File

@@ -57,7 +57,7 @@ class TestCsvStorlet(StorletJavaFunctionalTest):
'4,6', '')
for line in content.split('\n'):
if line:
self.assertEqual(len(line.split(',')), 2)
self.assertEqual(2, len(line.split(',')))
def _test_prune(self):
content = self.invoke_storlet(120, 1024,
@@ -67,7 +67,7 @@ class TestCsvStorlet(StorletJavaFunctionalTest):
for line in content.split('\n'):
if line:
val = line.split(',')[6]
self.assertEqual(val, 'ESP')
self.assertEqual('ESP', val)
def _test_prune_filter(self):
content = self.invoke_storlet(120, 1024,
@@ -77,7 +77,7 @@ class TestCsvStorlet(StorletJavaFunctionalTest):
for line in content.split('\n'):
if line:
val = line.split(',')[1]
self.assertEqual(val, 'ESP')
self.assertEqual('ESP', val)
def _prune_filter_scan_with_count(self, start, stop,
first, max_len,
@@ -88,7 +88,7 @@ class TestCsvStorlet(StorletJavaFunctionalTest):
count = 0
for line in content.split('\n'):
if line:
self.assertEqual(line.split(',')[1], 'FRA')
self.assertEqual('FRA', line.split(',')[1])
count = count + 1
return count
@@ -103,7 +103,7 @@ class TestCsvStorlet(StorletJavaFunctionalTest):
c3 = self._prune_filter_scan_with_count(699058, 1048558,
'false', max_len,
'4,6', 'EqualTo(6,FRA)')
self.assertEqual(c1 + c2 + c3, 1070)
self.assertEqual(1070, c1 + c2 + c3)
class TestCsvStorletOnProxy(TestCsvStorlet):

View File

@@ -42,7 +42,7 @@ class TestExecDepStorlet(StorletJavaFunctionalTest):
self.assertIn('x-object-meta-depend-ret-code', resp_headers)
self.assertEqual('42', resp_headers['x-object-meta-depend-ret-code'])
self.assertEqual(resp['status'], 200)
self.assertEqual(200, resp['status'])
class TestExecDepStorletOnProxy(TestExecDepStorlet):

View File

@@ -100,21 +100,21 @@ class TestHalfIdentityStorlet(StorletJavaFunctionalTest):
if params is not None and params.get('execute', None) is not None:
self.assertEqual(
resp_headers['X-Object-Meta-Execution result'.lower()],
'42')
'42',
resp_headers['X-Object-Meta-Execution result'.lower()])
self.assertEqual(resp_headers['X-Object-Meta-Testkey'.lower()],
random_md)
self.assertEqual(random_md,
resp_headers['X-Object-Meta-Testkey'.lower()])
def test_get(self):
res = self.invoke_storlet('GET')
self.assertEqual(res, 'acegikmn')
self.assertEqual('acegikmn', res)
def test_get_range(self):
res = self.invoke_storlet(
'GET',
headers={'X-Storlet-Range': 'bytes=5-10'})
self.assertEqual(res, 'fhj')
self.assertEqual('fhj', res)
class TestHalfIdentityStorletOnProxy(TestHalfIdentityStorlet):

View File

@@ -75,7 +75,7 @@ class TestIdentityStorlet(StorletJavaFunctionalTest):
if params is not None and params.get('execute', None) is not None:
mdv = processed_h['X-Object-Meta-Execution result'.lower()]
self.assertEqual(mdv, '42')
self.assertEqual('42', mdv)
if params is not None and params.get('double', None) == 'true':
self.assertEqual(original_c, processed_c[:file_length])
self.assertEqual(original_c, processed_c[file_length:])
@@ -111,10 +111,10 @@ class TestIdentityStorlet(StorletJavaFunctionalTest):
if params is not None and params.get('execute', None) is not None:
mdv = resp_headers['X-Object-Meta-Execution result'.lower()]
self.assertEqual(mdv, '42')
self.assertEqual('42', mdv)
self.assertEqual(resp_headers['X-Object-Meta-Testkey'.lower()],
random_md)
self.assertEqual(random_md,
resp_headers['X-Object-Meta-Testkey'.lower()])
@contextmanager
def _filecontext(self, path):
@@ -182,7 +182,7 @@ class TestIdentityStorlet(StorletJavaFunctionalTest):
'small',
headers=headers,
response_dict=dict())
self.assertEqual(content, expected)
self.assertEqual(expected, content)
def test_get_ranges(self):
response = dict()

View File

@@ -56,18 +56,18 @@ class TestMetadataStorlet(StorletJavaFunctionalTest):
c.get_object(self.url, self.token,
self.container, self.storlet_file,
response_dict=dict(), headers=headers)
self.assertEqual(original_headers['X-Object-Meta-key1'.lower()], '1')
self.assertEqual(original_headers['X-Object-Meta-key2'.lower()], '2')
self.assertEqual(original_headers['X-Object-Meta-key3'.lower()], '3')
self.assertEqual(original_headers['X-Object-Meta-key4'.lower()], '4')
self.assertEqual(original_headers['X-Object-Meta-key5'.lower()], '5')
self.assertEqual(original_headers['X-Object-Meta-key6'.lower()], '6')
self.assertEqual(original_headers['X-Object-Meta-key7'.lower()], '7')
self.assertEqual(original_headers['X-Object-Meta-key8'.lower()], '8')
self.assertEqual(original_headers['X-Object-Meta-key9'.lower()], '9')
self.assertEqual(original_headers['X-Object-Meta-key10'.lower()], '10')
self.assertEqual('1', original_headers['X-Object-Meta-key1'.lower()])
self.assertEqual('2', original_headers['X-Object-Meta-key2'.lower()])
self.assertEqual('3', original_headers['X-Object-Meta-key3'.lower()])
self.assertEqual('4', original_headers['X-Object-Meta-key4'.lower()])
self.assertEqual('5', original_headers['X-Object-Meta-key5'.lower()])
self.assertEqual('6', original_headers['X-Object-Meta-key6'.lower()])
self.assertEqual('7', original_headers['X-Object-Meta-key7'.lower()])
self.assertEqual('8', original_headers['X-Object-Meta-key8'.lower()])
self.assertEqual('9', original_headers['X-Object-Meta-key9'.lower()])
self.assertEqual('10', original_headers['X-Object-Meta-key10'.lower()])
omv = original_headers['X-Object-Meta-override_key'.lower()]
self.assertEqual(omv, 'new_value')
self.assertEqual('new_value', omv)
class TestMetadataStorletOnProxy(TestMetadataStorlet):

View File

@@ -77,12 +77,12 @@ class TestTestStorlet(StorletJavaFunctionalTest):
None, None,
None, None,
headers)
self.assertEqual(resp_headers.get('status'), 200)
self.assertEqual(200, resp_headers.get('status'))
gf.read()
self.assertEqual(resp_headers.get('status') == 200)
if op == 'print':
self.assertEqual(get_response_status, 200)
self.assertEqual(200, get_response_status)
self.assertIn('op', get_text)
self.assertIn('print', get_text)
self.assertIn('param2', get_text)
@@ -156,7 +156,7 @@ class TestTestStorlet(StorletJavaFunctionalTest):
self.container, 'test_object',
response_dict=resp_dict,
headers=headers)
self.assertEqual(resp_dict['status'], 200)
self.assertEqual(200, resp_dict['status'])
class TestTestStorletOnProxy(TestTestStorlet):

View File

@@ -61,8 +61,8 @@ class TestThumbnailStorlet(StorletJavaFunctionalTest):
headers = c.head_object(self.url, self.token,
self.container, 'gen_thumb_on_put.jpg')
self.assertEqual(headers['content-length'], '49032')
self.assertEqual(headers['x-object-meta-name'], 'thumbnail')
self.assertEqual('49032', headers['content-length'])
self.assertEqual('thumbnail', headers['x-object-meta-name'])
def invoke_storlet_on_copy_from(self):
headers = {'X-Run-Storlet': self.storlet_name,
@@ -88,8 +88,8 @@ class TestThumbnailStorlet(StorletJavaFunctionalTest):
headers = c.head_object(self.url, self.token,
self.container, 'gen_thumb_on_copy.jpg')
self.assertEqual(headers['content-length'], '49032')
self.assertEqual(headers['x-object-meta-name'], 'thumbnail')
self.assertEqual('49032', headers['content-length'])
self.assertEqual('thumbnail', headers['x-object-meta-name'])
self.assertTrue('x-object-meta-x-timestamp' not in headers)
self.assertTrue('x-timestamp' in headers)
@@ -109,8 +109,8 @@ class TestThumbnailStorlet(StorletJavaFunctionalTest):
headers = c.head_object(self.url, self.token,
self.container, 'gen_thumb_on_copy_.jpg')
self.assertEqual(headers['content-length'], '49032')
self.assertEqual(headers['x-object-meta-name'], 'thumbnail')
self.assertEqual('49032', headers['content-length'])
self.assertEqual('thumbnail', headers['x-object-meta-name'])
self.assertTrue('x-object-meta-x-timestamp' not in headers)
self.assertTrue('x-timestamp' in headers)

View File

@@ -43,7 +43,7 @@ class TestExecDepStorlet(StorletPythonFunctionalTest):
self.assertIn('x-object-meta-depend-ret-code', resp_headers)
self.assertEqual('42', resp_headers['x-object-meta-depend-ret-code'])
self.assertEqual(resp['status'], 200)
self.assertEqual(200, resp['status'])
class TestExecDepStorletOnProxy(TestExecDepStorlet):

View File

@@ -82,10 +82,10 @@ class TestLogger(unittest.TestCase):
self.assertEqual(logging.INFO, logger.level)
# INFO message is recorded with INFO leg level
logger.info('test1')
self.assertEqual(sio.getvalue(), 'test1\n')
self.assertEqual('test1\n', sio.getvalue())
# DEBUG message is not recorded with INFO leg level
logger.debug('test2')
self.assertEqual(sio.getvalue(), 'test1\n')
self.assertEqual('test1\n', sio.getvalue())
# set log level as DEBUG
logger = start_logger('test', 'DEBUG', 'abcdef')

View File

@@ -54,65 +54,65 @@ class TestFileDescriptorIterator(unittest.TestCase):
def test_read_with_timeout(self):
self.assertEqual(
self.iter_like.read_with_timeout(6), b'aaaa\nb')
b'aaaa\nb', self.iter_like.read_with_timeout(6))
self.assertEqual(
self.iter_like.read_with_timeout(6), b'bbb\ncc')
b'bbb\ncc', self.iter_like.read_with_timeout(6))
self.assertEqual(
self.iter_like.read_with_timeout(6), b'cc\n')
b'cc\n', self.iter_like.read_with_timeout(6))
self.assertEqual(
self.iter_like.read_with_timeout(6), b'')
b'', self.iter_like.read_with_timeout(6))
def test_next(self):
with self._mock_select():
self.assertEqual(self.iter_like.next(6), b'aaaa\nb')
self.assertEqual(self.iter_like.next(6), b'bbb\ncc')
self.assertEqual(self.iter_like.next(6), b'cc\n')
self.assertEqual(b'aaaa\nb', self.iter_like.next(6))
self.assertEqual(b'bbb\ncc', self.iter_like.next(6))
self.assertEqual(b'cc\n', self.iter_like.next(6))
with self.assertRaises(StopIteration):
self.iter_like.next(6)
self._reset_fd()
with self._mock_select():
# if size > content length
self.assertEqual(self.iter_like.next(50),
b'aaaa\nbbbb\ncccc\n')
self.assertEqual(b'aaaa\nbbbb\ncccc\n',
self.iter_like.next(50))
with self.assertRaises(StopIteration):
self.iter_like.next(50)
def test_read(self):
with self._mock_select():
self.assertEqual(self.iter_like.read(6), b'aaaa\nb')
self.assertEqual(self.iter_like.read(6), b'bbb\ncc')
self.assertEqual(self.iter_like.read(6), b'cc\n')
self.assertEqual(b'aaaa\nb', self.iter_like.read(6))
self.assertEqual(b'bbb\ncc', self.iter_like.read(6))
self.assertEqual(b'cc\n', self.iter_like.read(6))
with self.assertRaises(StopIteration):
self.iter_like.next(6)
def test_readline(self):
with self._mock_select():
# if size = -1
self.assertEqual(self.iter_like.readline(), b'aaaa\n')
self.assertEqual(b'aaaa\n', self.iter_like.readline())
# if size < line length
self.assertEqual(self.iter_like.readline(2), b'bb')
self.assertEqual(b'bb', self.iter_like.readline(2))
# read remaining chars in line
self.assertEqual(self.iter_like.readline(), b'bb\n')
self.assertEqual(b'bb\n', self.iter_like.readline())
# if size > line length
self.assertEqual(self.iter_like.readline(100), b'cccc\n')
self.assertEqual(b'cccc\n', self.iter_like.readline(100))
with self.assertRaises(StopIteration):
self.iter_like.readline()
def test_readlines(self):
with self._mock_select():
self.assertEqual(
self.iter_like.readlines(),
[b'aaaa\n', b'bbbb\n', b'cccc\n'])
[b'aaaa\n', b'bbbb\n', b'cccc\n'],
self.iter_like.readlines())
self._reset_fd()
with self._mock_select():
self.assertEqual(
self.iter_like.readlines(7),
[b'aaaa\n', b'bb'])
[b'aaaa\n', b'bb'],
self.iter_like.readlines(7))
if __name__ == '__main__':

View File

@@ -474,7 +474,7 @@ use = egg:swift#catch_errors
expected_mock_writer_calls = len(extra_sources) + 1
self.assertEqual(expected_mock_writer_calls,
len(called_fd_and_bodies))
self.assertEqual(called_fd_and_bodies[0][1], 'body')
self.assertEqual('body', called_fd_and_bodies[0][1])
return called_fd_and_bodies
def test_docker_gateway_communicate(self):
@@ -512,7 +512,7 @@ use = egg:swift#catch_errors
extra_request = generate_extra_st_request()
mock_calls = self._test_docker_gateway_communicate(
extra_sources=[extra_request])
self.assertEqual(mock_calls[1][1], 'This is a response body')
self.assertEqual('This is a response body', mock_calls[1][1])
# run all existing eventlet threads
for app_iter in data_sources:

View File

@@ -116,7 +116,7 @@ class TestRuntimePaths(unittest.TestCase):
mock.patch('os.makedirs') as m, \
mock.patch('os.chmod') as c:
self.paths.create_host_pipe_prefix()
self.assertEqual(m.call_count, 0)
self.assertEqual(0, m.call_count)
cargs, ckwargs = c.call_args
# Make sure about the target directory
self.assertEqual(cargs[0], pipedir)
@@ -126,7 +126,7 @@ class TestRuntimePaths(unittest.TestCase):
mock.patch('os.makedirs') as m, \
mock.patch('os.chmod') as c:
self.paths.create_host_pipe_prefix(),
self.assertEqual(m.call_count, 1)
self.assertEqual(1, m.call_count)
# Make sure about the target directory
margs, mkwargs = m.call_args
self.assertEqual(margs[0], pipedir)
@@ -171,7 +171,7 @@ class TestRuntimePaths(unittest.TestCase):
self.paths.slog_path(self.storlet_id),
os.path.join(self.log_dir, self.scope,
self.storlet_id))
self.assertEqual(m.call_count, 0)
self.assertEqual(0, m.call_count)
with mock.patch('os.path.exists', return_value=False), \
mock.patch('os.makedirs') as m:
@@ -179,7 +179,7 @@ class TestRuntimePaths(unittest.TestCase):
self.paths.slog_path(self.storlet_id),
os.path.join(self.log_dir, self.scope,
self.storlet_id))
self.assertEqual(m.call_count, 1)
self.assertEqual(1, m.call_count)
def test_get_host_storlet_cache_dir(self):
self.assertEqual(
@@ -269,11 +269,11 @@ class TestRunTimeSandbox(unittest.TestCase):
def test_parse_sandbox_factory_answer(self):
status, msg = self.sbox._parse_sandbox_factory_answer('True:message')
self.assertTrue(status)
self.assertEqual(msg, 'message')
self.assertEqual('message', msg)
status, msg = self.sbox._parse_sandbox_factory_answer('False:message')
self.assertFalse(status)
self.assertEqual(msg, 'message')
self.assertEqual('message', msg)
with self.assertRaises(StorletRuntimeException):
self.sbox._parse_sandbox_factory_answer('Foo')
@@ -285,11 +285,11 @@ class TestRunTimeSandbox(unittest.TestCase):
def test_ping(self):
with _mock_os_pipe(['True:OK']) as pipes, _mock_sbus(0):
self.assertEqual(self.sbox.ping(), 1)
self.assertEqual(1, self.sbox.ping())
self._check_all_pipese_closed(pipes)
with _mock_os_pipe(['False:ERROR']) as pipes, _mock_sbus(-1):
self.assertEqual(self.sbox.ping(), -1)
self.assertEqual(-1, self.sbox.ping())
self._check_all_pipese_closed(pipes)
with _mock_os_pipe(['Foo']) as pipes, _mock_sbus(0):
@@ -302,7 +302,7 @@ class TestRunTimeSandbox(unittest.TestCase):
mock.patch('storlets.gateway.gateways.docker.runtime.'
'time.sleep') as _s:
self.sbox.wait()
self.assertEqual(_s.call_count, 0)
self.assertEqual(0, _s.call_count)
self._check_all_pipese_closed(pipes)
with _mock_os_pipe(['False:ERROR', 'True:OK']) as pipes, \
@@ -310,7 +310,7 @@ class TestRunTimeSandbox(unittest.TestCase):
mock.patch('storlets.gateway.gateways.docker.runtime.'
'time.sleep') as _s:
self.sbox.wait()
self.assertEqual(_s.call_count, 1)
self.assertEqual(1, _s.call_count)
self._check_all_pipese_closed(pipes)
with _mock_os_pipe(['Foo']) as pipes, _mock_sbus(0), \
@@ -355,11 +355,11 @@ class TestRunTimeSandbox(unittest.TestCase):
storlet_main = 'org.openstack.storlet.Storlet'
dependencies = ['dep1', 'dep2']
self.assertEqual(
self.sbox._get_storlet_classpath(storlet_main, storlet_id,
dependencies),
'/home/swift/org.openstack.storlet.Storlet/Storlet.jar:'
'/home/swift/org.openstack.storlet.Storlet/dep1:'
'/home/swift/org.openstack.storlet.Storlet/dep2')
'/home/swift/org.openstack.storlet.Storlet/dep2',
self.sbox._get_storlet_classpath(storlet_main, storlet_id,
dependencies),)
class TestStorletInvocationProtocol(unittest.TestCase):
@@ -472,7 +472,7 @@ class TestStorletInvocationProtocol(unittest.TestCase):
# BadFileDescriptor
with self.assertRaises(OSError) as os_error:
os.close(pipes[0][1])
self.assertEqual(os_error.exception.errno, 9)
self.assertEqual(9, os_error.exception.errno)
finally:
for fd in pipes[0]:

View File

@@ -200,8 +200,8 @@ class TestStorletBaseHandler(unittest.TestCase):
req, mock.MagicMock(), mock.MagicMock(),
mock.MagicMock(), mock.MagicMock())
handler._update_storlet_parameters_from_headers()
self.assertEqual(handler.request.params['1'], '2:3:4')
self.assertEqual(handler.request.params['A'], 'c')
self.assertEqual('2:3:4', handler.request.params['1'])
self.assertEqual('c', handler.request.params['A'])
if __name__ == '__main__':

View File

@@ -147,8 +147,8 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
self.assertEqual('AKE AP', resp.body)
self.assertNotIn('Content-Range', resp.headers)
self.assertEqual(resp.headers['Storlet-Input-Range'],
'bytes 1-6/8')
self.assertEqual('bytes 1-6/8',
resp.headers['Storlet-Input-Range'])
raw_req = self.base_app.get_calls('GET', target)[0]
for key in ['Range', 'X-Storlet-Range']:
@@ -267,7 +267,7 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
# The last one is PUT request about processed object
self.assertEqual('PUT', calls[-1][0])
self.assertEqual(target, calls[-1][1])
self.assertEqual(calls[-1][3], 'FAKE APP')
self.assertEqual('FAKE APP', calls[-1][3])
def test_PUT_with_storlets_no_object(self):
target = '/v1/AUTH_a/c/'
@@ -312,15 +312,15 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
resp = self.get_request_response(target, 'PUT', headers=headers)
self.assertEqual('201 Created', resp.status)
get_calls = self.base_app.get_calls('GET', source)
self.assertEqual(len(get_calls), 1)
self.assertEqual(get_calls[-1][3], '')
self.assertEqual(get_calls[-1][1], source)
self.assertEqual(1, len(get_calls))
self.assertEqual('', get_calls[-1][3])
self.assertEqual(source, get_calls[-1][1])
self.assertIn('X-Run-Storlet', get_calls[-1][2])
put_calls = self.base_app.get_calls('PUT', target)
self.assertEqual(len(put_calls), 1)
self.assertEqual(put_calls[-1][3], 'source body')
self.assertEqual(1, len(put_calls))
self.assertEqual('source body', put_calls[-1][3])
self.assertIn('X-Object-Meta-Name', dict(put_calls[-1][2]))
self.assertEqual(put_calls[-1][2]['X-Object-Meta-Name'], 'name')
self.assertEqual('name', put_calls[-1][2]['X-Object-Meta-Name'])
self.assertNotIn('X-Run-Storlet', put_calls[-1][2])
# no invocation (at gateway stub) at proxy
for debug_line in self.logger.get_log_lines('debug'):
@@ -345,15 +345,15 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
resp = self.get_request_response(target, 'PUT', headers=headers)
self.assertEqual('201 Created', resp.status)
get_calls = self.base_app.get_calls('GET', source)
self.assertEqual(len(get_calls), 1)
self.assertEqual(get_calls[-1][3], '')
self.assertEqual(get_calls[-1][1], source)
self.assertEqual(1, len(get_calls))
self.assertEqual('', get_calls[-1][3])
self.assertEqual(source, get_calls[-1][1])
self.assertNotIn('X-Run-Storlet', get_calls[-1][2])
put_calls = self.base_app.get_calls('PUT', target)
self.assertEqual(len(put_calls), 1)
self.assertEqual(put_calls[-1][3], 'source body')
self.assertEqual(1, len(put_calls))
self.assertEqual('source body', put_calls[-1][3])
self.assertIn('X-Object-Meta-Name', dict(put_calls[-1][2]))
self.assertEqual(put_calls[-1][2]['X-Object-Meta-Name'], 'name')
self.assertEqual('name', put_calls[-1][2]['X-Object-Meta-Name'])
self.assertNotIn('X-Run-Storlet', put_calls[-1][2])
# no invocation at proxy
for debug_line in self.logger.get_log_lines('debug'):
@@ -390,14 +390,14 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
resp = self.get_request_response(source, 'COPY', headers=headers)
self.assertEqual('201 Created', resp.status)
get_calls = self.base_app.get_calls('GET', source)
self.assertEqual(len(get_calls), 1)
self.assertEqual(get_calls[-1][3], '')
self.assertEqual(get_calls[-1][1], source)
self.assertEqual(1, len(get_calls))
self.assertEqual('', get_calls[-1][3])
self.assertEqual(source, get_calls[-1][1])
self.assertIn('X-Run-Storlet', get_calls[-1][2])
put_calls = self.base_app.get_calls('PUT', target)
self.assertEqual(len(put_calls), 1)
self.assertEqual(put_calls[-1][3], 'source body')
self.assertEqual(put_calls[-1][2]['X-Object-Meta-Name'], 'name')
self.assertEqual(1, len(put_calls))
self.assertEqual('source body', put_calls[-1][3])
self.assertEqual('name', put_calls[-1][2]['X-Object-Meta-Name'])
self.assertNotIn('X-Run-Storlet', put_calls[-1][2])
# no invocation at proxy
for debug_line in self.logger.get_log_lines('debug'):
@@ -422,14 +422,14 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
resp = self.get_request_response(source, 'COPY', headers=headers)
self.assertEqual('201 Created', resp.status)
get_calls = self.base_app.get_calls('GET', source)
self.assertEqual(len(get_calls), 1)
self.assertEqual(get_calls[-1][3], '')
self.assertEqual(get_calls[-1][1], source)
self.assertEqual(1, len(get_calls))
self.assertEqual('', get_calls[-1][3])
self.assertEqual(source, get_calls[-1][1])
self.assertNotIn('X-Run-Storlet', get_calls[-1][2])
put_calls = self.base_app.get_calls('PUT', target)
self.assertEqual(len(put_calls), 1)
self.assertEqual(put_calls[-1][3], 'source body')
self.assertEqual(put_calls[-1][2]['X-Object-Meta-Name'], 'name')
self.assertEqual(1, len(put_calls))
self.assertEqual('source body', put_calls[-1][3])
self.assertEqual('name', put_calls[-1][2]['X-Object-Meta-Name'])
self.assertNotIn('X-Run-Storlet', put_calls[-1][2])
# no invocation at proxy
for debug_line in self.logger.get_log_lines('debug'):
@@ -634,11 +634,11 @@ class TestStorletMiddlewareProxy(BaseTestStorletMiddleware):
resp = self.get_request_response(target, 'POST', headers=headers)
self.assertEqual('204 No Content', resp.status)
head_calls = self.base_app.get_calls('HEAD', target)
self.assertEqual(len(head_calls), 1)
self.assertEqual(1, len(head_calls))
post_calls = self.base_app.get_calls('POST', target)
self.assertEqual(len(post_calls), 1)
self.assertEqual(post_calls[-1][2]['X-Container-Read'],
expected_read_acl)
self.assertEqual(1, len(post_calls))
self.assertEqual(expected_read_acl,
post_calls[-1][2]['X-Container-Read'])
def test_GET_with_invalid_referrer(self):
headers = [{'Referer': REFERER_PREFIX},
@@ -719,9 +719,9 @@ class TestStorletProxyHandler(unittest.TestCase):
handler._remove_storlet_headers(headers)
self.assertNotIn('X-Storlet-Key1', headers)
self.assertEqual(headers['X-Key2'], 'Value2')
self.assertEqual('Value2', headers['X-Key2'])
self.assertNotIn('X-Object-Meta-Storlet-Key3', headers)
self.assertEqual(headers['X-Object-Meta-Key4'], 'Value4')
self.assertEqual('Value4', headers['X-Object-Meta-Key4'])
def test_get_storlet_invocation_options(self):
req = Request.blank(