Fix intermittent SLO unit test failures

Now that we have concurrent deletes, the order is not guaranteed.

Change-Id: Ib833306a07ee0755a80501d5294eaa87b2347dc0
This commit is contained in:
Tim Burke 2016-06-29 13:21:31 -07:00
parent 029c2782dd
commit 57ac316b03

View File

@ -840,15 +840,15 @@ class TestSloDeleteManifest(SloTestCase):
status, headers, body = self.call_slo(req) status, headers, body = self.call_slo(req)
resp_data = json.loads(body) resp_data = json.loads(body)
self.assertEqual( self.assertEqual(
self.app.calls, set(self.app.calls),
[('GET', set([('GET',
'/v1/AUTH_test/deltest/man?multipart-manifest=get'), '/v1/AUTH_test/deltest/man?multipart-manifest=get'),
('DELETE', ('DELETE',
'/v1/AUTH_test/deltest/gone?multipart-manifest=delete'), '/v1/AUTH_test/deltest/gone?multipart-manifest=delete'),
('DELETE', ('DELETE',
'/v1/AUTH_test/deltest/b_2?multipart-manifest=delete'), '/v1/AUTH_test/deltest/b_2?multipart-manifest=delete'),
('DELETE', ('DELETE',
'/v1/AUTH_test/deltest/man?multipart-manifest=delete')]) '/v1/AUTH_test/deltest/man?multipart-manifest=delete')]))
self.assertEqual(resp_data['Response Status'], '200 OK') self.assertEqual(resp_data['Response Status'], '200 OK')
self.assertEqual(resp_data['Number Deleted'], 2) self.assertEqual(resp_data['Number Deleted'], 2)
self.assertEqual(resp_data['Number Not Found'], 1) self.assertEqual(resp_data['Number Not Found'], 1)
@ -858,14 +858,13 @@ class TestSloDeleteManifest(SloTestCase):
'/v1/AUTH_test/deltest/man-all-there?multipart-manifest=delete', '/v1/AUTH_test/deltest/man-all-there?multipart-manifest=delete',
environ={'REQUEST_METHOD': 'DELETE'}) environ={'REQUEST_METHOD': 'DELETE'})
self.call_slo(req) self.call_slo(req)
self.assertEqual( self.assertEqual(set(self.app.calls), set([
self.app.calls, ('GET',
[('GET', '/v1/AUTH_test/deltest/man-all-there?multipart-manifest=get'),
'/v1/AUTH_test/deltest/man-all-there?multipart-manifest=get'), ('DELETE', '/v1/AUTH_test/deltest/b_2?multipart-manifest=delete'),
('DELETE', '/v1/AUTH_test/deltest/b_2?multipart-manifest=delete'), ('DELETE', '/v1/AUTH_test/deltest/c_3?multipart-manifest=delete'),
('DELETE', '/v1/AUTH_test/deltest/c_3?multipart-manifest=delete'), ('DELETE', ('/v1/AUTH_test/deltest/' +
('DELETE', ('/v1/AUTH_test/deltest/' + 'man-all-there?multipart-manifest=delete'))]))
'man-all-there?multipart-manifest=delete'))])
def test_handle_multipart_delete_nested(self): def test_handle_multipart_delete_nested(self):
req = Request.blank( req = Request.blank(
@ -1013,14 +1012,15 @@ class TestSloDeleteManifest(SloTestCase):
status, headers, body = self.call_slo(req) status, headers, body = self.call_slo(req)
resp_data = json.loads(body) resp_data = json.loads(body)
self.assertEqual( self.assertEqual(
self.app.calls, set(self.app.calls),
[('GET', '/v1/AUTH_test/deltest/' + set([('GET', '/v1/AUTH_test/deltest/' +
'manifest-with-unauth-segment?multipart-manifest=get'), 'manifest-with-unauth-segment?multipart-manifest=get'),
('DELETE', '/v1/AUTH_test/deltest/a_1?multipart-manifest=delete'), ('DELETE',
('DELETE', '/v1/AUTH_test/deltest-unauth/' + '/v1/AUTH_test/deltest/a_1?multipart-manifest=delete'),
'q_17?multipart-manifest=delete'), ('DELETE', '/v1/AUTH_test/deltest-unauth/' +
('DELETE', '/v1/AUTH_test/deltest/' + 'q_17?multipart-manifest=delete'),
'manifest-with-unauth-segment?multipart-manifest=delete')]) ('DELETE', '/v1/AUTH_test/deltest/' +
'manifest-with-unauth-segment?multipart-manifest=delete')]))
self.assertEqual(resp_data['Response Status'], '400 Bad Request') self.assertEqual(resp_data['Response Status'], '400 Bad Request')
self.assertEqual(resp_data['Response Body'], '') self.assertEqual(resp_data['Response Body'], '')
self.assertEqual(resp_data['Number Deleted'], 2) self.assertEqual(resp_data['Number Deleted'], 2)
@ -1039,14 +1039,13 @@ class TestSloDeleteManifest(SloTestCase):
resp_data = json.loads(body) resp_data = json.loads(body)
self.assertEqual(resp_data["Number Deleted"], 3) self.assertEqual(resp_data["Number Deleted"], 3)
self.assertEqual( self.assertEqual(set(self.app.calls), set([
self.app.calls, ('GET',
[('GET', '/v1/AUTH_test/deltest/man-all-there?multipart-manifest=get'),
'/v1/AUTH_test/deltest/man-all-there?multipart-manifest=get'), ('DELETE', '/v1/AUTH_test/deltest/b_2?multipart-manifest=delete'),
('DELETE', '/v1/AUTH_test/deltest/b_2?multipart-manifest=delete'), ('DELETE', '/v1/AUTH_test/deltest/c_3?multipart-manifest=delete'),
('DELETE', '/v1/AUTH_test/deltest/c_3?multipart-manifest=delete'), ('DELETE', ('/v1/AUTH_test/deltest/' +
('DELETE', ('/v1/AUTH_test/deltest/' + 'man-all-there?multipart-manifest=delete'))]))
'man-all-there?multipart-manifest=delete'))])
class TestSloHeadManifest(SloTestCase): class TestSloHeadManifest(SloTestCase):