summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Illfelder <illfelder@users.noreply.github.com>2016-07-08 14:09:15 -0700
committerGitHub <noreply@github.com>2016-07-08 14:09:15 -0700
commitf9628d63cbecb48268163ace4c2cf9a7ec05b09f (patch)
tree203f1eab80cb9fe9060f8a8b5ef8bed885efd246
parente0064e2a4e1fbde7466d9a886cb0cf27865563ad (diff)
downloadgoogle-compute-image-packages-f9628d63cbecb48268163ace4c2cf9a7ec05b09f.tar.gz
Fixed exception checking in metadata watcher. (#294)
-rw-r--r--google_compute_engine/metadata_watcher.py5
-rw-r--r--google_compute_engine/tests/metadata_watcher_test.py13
2 files changed, 6 insertions, 12 deletions
diff --git a/google_compute_engine/metadata_watcher.py b/google_compute_engine/metadata_watcher.py
index e23c60a..c6b035e 100644
--- a/google_compute_engine/metadata_watcher.py
+++ b/google_compute_engine/metadata_watcher.py
@@ -157,12 +157,11 @@ class MetadataWatcher(object):
return self._GetMetadataUpdate(
metadata_key=metadata_key, recursive=recursive, wait=wait)
except (httpclient.HTTPException, socket.error, urlerror.URLError) as e:
- if isinstance(e, type(exception)) and e.args == exception.args:
+ if isinstance(e, type(exception)):
continue
else:
exception = e
- message = 'GET request error retrieving metadata. %s.'
- self.logger.exception(message, exception)
+ self.logger.exception('GET request error retrieving metadata.')
def WatchMetadata(self, handler, metadata_key='', recursive=True):
"""Watch for changes to the contents of the metadata server.
diff --git a/google_compute_engine/tests/metadata_watcher_test.py b/google_compute_engine/tests/metadata_watcher_test.py
index d661517..7692f91 100644
--- a/google_compute_engine/tests/metadata_watcher_test.py
+++ b/google_compute_engine/tests/metadata_watcher_test.py
@@ -207,9 +207,8 @@ class MetadataWatcherTest(unittest.TestCase):
def testHandleMetadataUpdateException(self):
mock_response = mock.Mock()
first = metadata_watcher.socket.timeout()
- second = metadata_watcher.socket.timeout('a')
- third = metadata_watcher.urlerror.URLError('b')
- mock_response.side_effect = [first, second, second, third, {}]
+ second = metadata_watcher.urlerror.URLError('Test')
+ mock_response.side_effect = [first, first, second, {}]
self.mock_watcher._GetMetadataUpdate = mock_response
metadata_key = 'instance/id'
recursive = False
@@ -221,13 +220,9 @@ class MetadataWatcherTest(unittest.TestCase):
{})
expected_calls = [
mock.call(metadata_key=metadata_key, recursive=recursive, wait=wait),
- ] * 5
+ ] * 4
self.assertEqual(mock_response.mock_calls, expected_calls)
- expected_calls = [
- mock.call.exception(mock.ANY, first),
- mock.call.exception(mock.ANY, second),
- mock.call.exception(mock.ANY, third),
- ]
+ expected_calls = [mock.call.exception(mock.ANY)] * 2
self.assertEqual(self.mock_logger.mock_calls, expected_calls)
def testWatchMetadata(self):