first commit
This commit is contained in:
54
test/db/redis_manager_test.py
Normal file
54
test/db/redis_manager_test.py
Normal file
@@ -0,0 +1,54 @@
|
||||
import unittest
|
||||
from unittest.mock import patch, MagicMock
|
||||
|
||||
from helix.db.redis_manager import RedisManager
|
||||
|
||||
|
||||
class RedisManagerTest(unittest.TestCase):
|
||||
def test_parses_vcap_environment_variable(self):
|
||||
valid_vcap_string = """
|
||||
{
|
||||
"rediscloud": [
|
||||
{
|
||||
"credentials": {
|
||||
"hostname": "fakehost",
|
||||
"password": "fakepassword",
|
||||
"port": "1234"
|
||||
},
|
||||
"syslog_drain_url": null,
|
||||
"label": "rediscloud",
|
||||
"provider": null,
|
||||
"plan": "30mb",
|
||||
"name": "helix-staging-redis",
|
||||
"tags": [
|
||||
"Data Stores",
|
||||
"Data Store",
|
||||
"Caching",
|
||||
"Messaging and Queuing",
|
||||
"key-value",
|
||||
"caching",
|
||||
"redis"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
"""
|
||||
mock_redis = MagicMock()
|
||||
|
||||
with patch('redis.Redis', mock_redis):
|
||||
RedisManager.get_redis_connection(valid_vcap_string, 'redis://example.org')
|
||||
mock_redis.assert_called_with(host='fakehost', password='fakepassword', port=1234)
|
||||
|
||||
def test_uses_url_if_vcap_environment_is_not_set(self):
|
||||
mock_redis = MagicMock()
|
||||
|
||||
with patch('redis.Redis', mock_redis):
|
||||
RedisManager.get_redis_connection(None, 'redis://example.org')
|
||||
mock_redis.from_url.assert_called_with('redis://example.org')
|
||||
|
||||
def test_defaults_to_local_connection_if_vcap_environment_is_not_set_and_url_is_none(self):
|
||||
mock_redis = MagicMock()
|
||||
|
||||
with patch('redis.Redis', mock_redis):
|
||||
RedisManager.get_redis_connection(None, None)
|
||||
mock_redis.assert_called_with(host='localhost', port=6379, db=0)
|
||||
Reference in New Issue
Block a user