storage_backend/server_environment/tests/test_environment_variable.py

39 lines
1.4 KiB
Python

# Copyright 2018 Camptocamp (https://www.camptocamp.com).
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html)
from unittest.mock import patch
from odoo.tools.config import config as odoo_config
from odoo.addons.server_environment import server_env
from .common import ServerEnvironmentCase
class TestRunningEnvDefault(ServerEnvironmentCase):
def test_running_env_default(self):
"""When var is not provided it defaults to `test`."""
self.assertEqual(odoo_config["running_env"], "test")
@patch.dict(odoo_config.options, {"running_env": "testing"})
class TestEnvironmentVariables(ServerEnvironmentCase):
def test_env_variables(self):
public = "[section]\n" "foo=bar\n" "bar=baz\n"
secret = "[section]\n" "bar=foo\n" "alice=bob\n"
with self.set_config_dir(None), self.set_env_variables(public, secret):
parser = server_env._load_config()
self.assertEqual(list(parser.keys()), ["DEFAULT", "section"])
self.assertDictEqual(
dict(parser["section"].items()),
{"alice": "bob", "bar": "foo", "foo": "bar"},
)
def test_env_variables_override(self):
public = "[external_service.ftp]\n" "user=foo\n"
with self.set_config_dir("testfiles"), self.set_env_variables(public):
parser = server_env._load_config()
val = parser.get("external_service.ftp", "user")
self.assertEqual(val, "foo")