summaryrefslogtreecommitdiff
path: root/tests/unit/config/config_test.py
diff options
context:
space:
mode:
authorFlorian Apolloner <florian@apolloner.eu>2019-10-03 15:46:49 +0200
committerFlorian Apolloner <florian@apolloner.eu>2020-01-28 16:33:28 +0100
commitf17e7268b0a7fd287bd8be3af61f9363222d2e07 (patch)
treec935af1fbcaa92975f92d5010dd734f6e3e39bf8 /tests/unit/config/config_test.py
parent73551d5a92c93006ac3405ee60bb90a60da2900c (diff)
Properly escape values coming from env_files, fixes #6871
Signed-off-by: Florian Apolloner <florian@apolloner.eu>
Diffstat (limited to 'tests/unit/config/config_test.py')
-rw-r--r--tests/unit/config/config_test.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/tests/unit/config/config_test.py b/tests/unit/config/config_test.py
index dc346df9..933f659f 100644
--- a/tests/unit/config/config_test.py
+++ b/tests/unit/config/config_test.py
@@ -5420,15 +5420,19 @@ class SerializeTest(unittest.TestCase):
'environment': {
'CURRENCY': '$'
},
+ 'env_file': ['tests/fixtures/env/three.env'],
'entrypoint': ['$SHELL', '-c'],
}
}
}
- config_dict = config.load(build_config_details(cfg), interpolate=False)
+ config_dict = config.load(build_config_details(cfg, working_dir='.'), interpolate=False)
serialized_config = yaml.safe_load(serialize_config(config_dict, escape_dollar=False))
serialized_service = serialized_config['services']['web']
assert serialized_service['environment']['CURRENCY'] == '$'
+ # Values coming from env_files are not allowed to have variables
+ assert serialized_service['environment']['FOO'] == 'NO $$ENV VAR'
+ assert serialized_service['environment']['DOO'] == 'NO $${ENV} VAR'
assert serialized_service['command'] == 'echo $FOO'
assert serialized_service['entrypoint'][0] == '$SHELL'