import mock
import os
+import socket
import unittest
import arvados
with self.mock_responses(self.DEFAULT_EXPECT, 404, 200, 500):
self.check_success(locator=self.HINTED_LOCATOR)
+ def test_try_next_server_after_timeout(self):
+ side_effects = [socket.timeout("timed out"),
+ (fake_httplib2_response(200), self.DEFAULT_EXPECT)]
+ with mock.patch('httplib2.Http.request',
+ side_effect=iter(side_effects)):
+ self.check_success(locator=self.HINTED_LOCATOR)
+
@no_backoff
class KeepClientRetryPutTestCase(unittest.TestCase, KeepClientRetryTestMixin):