Skip to content

Commit

Permalink
Fix encoding issues w/raw responses.
Browse files Browse the repository at this point in the history
  • Loading branch information
arusahni committed Jun 30, 2016
1 parent 5752509 commit 3d93536
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 5 deletions.
2 changes: 1 addition & 1 deletion preflyt/checkers/elasticsearch.py
Expand Up @@ -29,7 +29,7 @@ def check(self):
try:
with request.urlopen(self._url) as response:
body = response.read()
response = json.loads(body)
response = json.loads(body.decode('utf-8'))
if response["status"] in self._colors:
return True, "Cluster status is '{}'".format(response["status"])
return False, "Cluster status is '{}'".format(response["status"])
Expand Down
11 changes: 7 additions & 4 deletions tests/test_elasticsearch.py
Expand Up @@ -31,6 +31,9 @@
}}
"""

def get_response(color):
return RESPONSE_TEMPLATE.format(color=color).encode('utf-8')

def test_init():
esc = ElasticsearchChecker(EXAMPLE_URL)
eq_(ElasticsearchChecker.checker_name, "es")
Expand All @@ -52,7 +55,7 @@ def test_init_prefixless():
def test_check_healthy(urlopen):
esc = ElasticsearchChecker(EXAMPLE_URL)
response_mock = MagicMock()
response_mock.read.return_value = RESPONSE_TEMPLATE.format(color="green")
response_mock.read.return_value = get_response("green")
response_mock.__enter__.return_value = response_mock
urlopen.return_value = response_mock
result, message = esc.check()
Expand All @@ -64,7 +67,7 @@ def test_check_healthy(urlopen):
def test_check_unhealthy(urlopen):
esc = ElasticsearchChecker(EXAMPLE_URL)
response_mock = MagicMock()
response_mock.read.return_value = RESPONSE_TEMPLATE.format(color="yellow")
response_mock.read.return_value = get_response("yellow")
response_mock.__enter__.return_value = response_mock
urlopen.return_value = response_mock
result, message = esc.check()
Expand All @@ -76,7 +79,7 @@ def test_check_unhealthy(urlopen):
def test_check_additional_color(urlopen):
esc = ElasticsearchChecker(EXAMPLE_URL, colors=["yellow"])
response_mock = MagicMock()
response_mock.read.return_value = RESPONSE_TEMPLATE.format(color="yellow")
response_mock.read.return_value = get_response("yellow")
response_mock.__enter__.return_value = response_mock
urlopen.return_value = response_mock
result, message = esc.check()
Expand All @@ -88,7 +91,7 @@ def test_check_additional_color(urlopen):
def test_check_additional_color_base(urlopen):
esc = ElasticsearchChecker(EXAMPLE_URL, colors=["yellow"])
response_mock = MagicMock()
response_mock.read.return_value = RESPONSE_TEMPLATE.format(color="green")
response_mock.read.return_value = get_response("green")
response_mock.__enter__.return_value = response_mock
urlopen.return_value = response_mock
result, message = esc.check()
Expand Down

0 comments on commit 3d93536

Please sign in to comment.