Tweak and test warning shown when version is a dict

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
This commit is contained in:
Aanand Prasad 2016-01-29 16:38:23 +00:00
parent f081376067
commit 8024f2f09e
2 changed files with 15 additions and 10 deletions

View File

@ -138,9 +138,9 @@ class ConfigFile(namedtuple('_ConfigFile', 'filename config')):
version = self.config['version'] version = self.config['version']
if isinstance(version, dict): if isinstance(version, dict):
log.warn("Unexpected type for field 'version', in file {} assuming " log.warn('Unexpected type for "version" key in "{}". Assuming '
"version is the name of a service, and defaulting to " '"version" is the name of a service, and defaulting to '
"Compose file version 1".format(self.filename)) 'Compose file version 1.'.format(self.filename))
return V1 return V1
if not isinstance(version, six.string_types): if not isinstance(version, six.string_types):

View File

@ -232,6 +232,7 @@ class ConfigTest(unittest.TestCase):
assert volumes['other'] == {} assert volumes['other'] == {}
def test_load_service_with_name_version(self): def test_load_service_with_name_version(self):
with mock.patch('compose.config.config.log') as mock_logging:
config_data = config.load( config_data = config.load(
build_config_details({ build_config_details({
'version': { 'version': {
@ -239,6 +240,10 @@ class ConfigTest(unittest.TestCase):
} }
}, 'working_dir', 'filename.yml') }, 'working_dir', 'filename.yml')
) )
assert 'Unexpected type for "version" key in "filename.yml"' \
in mock_logging.warn.call_args[0][0]
service_dicts = config_data.services service_dicts = config_data.services
self.assertEqual( self.assertEqual(
service_sort(service_dicts), service_sort(service_dicts),