Skip to content

Commit

Permalink
Merge pull request #10 from hivesolutions/test_load_dot_env
Browse files Browse the repository at this point in the history
test: add test_load_dot_env
  • Loading branch information
joamag committed Nov 23, 2023
2 parents 537f567 + 1b211a9 commit 4c7385b
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions src/colony/test/base/config.py
Expand Up @@ -41,6 +41,9 @@

import colony

try: import unittest.mock as mock
except ImportError: mock = None

class ConfigTest(unittest.TestCase):

def test_basic(self):
Expand Down Expand Up @@ -88,3 +91,35 @@ def test_none(self):
result = colony.conf("HEIGHT", cast = int)

self.assertEqual(result, None)

def test_load_dot_env(self):
if mock == None:
self.skipTest("Skipping test: mock unavailable")

mock_data = mock.mock_open(read_data = b"#This is a comment\nAGE=10\nNAME=colony\n")

with mock.patch("os.path.exists", return_value = True),\
mock.patch("builtins.open", mock_data, create = True) as mock_open:

ctx = dict(
configs = {},
config_f = []
)

colony.base.config.load_dot_env(".env", "utf-8", ctx)

result = colony.conf("AGE", cast = int)
self.assertEqual(type(result), int)
self.assertEqual(result, 10)

result = colony.conf("AGE", cast = str)

self.assertEqual(result, "10")
self.assertEqual(type(result), str)

result = colony.conf("HEIGHT", cast = int)
self.assertEqual(result, None)

self.assertEqual(len(ctx["configs"]), 2)

self.assertEqual(mock_open.return_value.close.call_count, 1)

0 comments on commit 4c7385b

Please sign in to comment.