(this adjusts new code) raise RuntimeError if provided config file is invalid or empty, not ValueError.
configuration).
It will raise :exc:`FileNotFoundError` if the file
- doesn't exist and :exc:`ValueError` if the file is invalid or
+ doesn't exist and :exc:`RuntimeError` if the file is invalid or
empty.
:param fname: A filename, or a file-like object, or an instance derived
.. versionadded:: 3.10
The *encoding* parameter is added.
- .. versionadded:: 3.12
+ .. versionchanged:: 3.12
An exception will be thrown if the provided file
doesn't exist or is invalid or empty.
if not os.path.exists(fname):
raise FileNotFoundError(f"{fname} doesn't exist")
elif not os.path.getsize(fname):
- raise ValueError(f'{fname} is an empty file')
+ raise RuntimeError(f'{fname} is an empty file')
if isinstance(fname, configparser.RawConfigParser):
cp = fname
encoding = io.text_encoding(encoding)
cp.read(fname, encoding=encoding)
except configparser.ParsingError as e:
- raise ValueError(f'{fname} is invalid: {e}')
+ raise RuntimeError(f'{fname} is invalid: {e}')
formatters = _create_formatters(cp)
"""
file = io.StringIO(textwrap.dedent(test_config))
- self.assertRaises(ValueError, logging.config.fileConfig, file)
+ self.assertRaises(RuntimeError, logging.config.fileConfig, file)
def test_exception_if_confg_file_is_empty(self):
fd, fn = tempfile.mkstemp(prefix='test_empty_', suffix='.ini')
os.close(fd)
- self.assertRaises(ValueError, logging.config.fileConfig, fn)
+ self.assertRaises(RuntimeError, logging.config.fileConfig, fn)
os.remove(fn)
def test_exception_if_config_file_does_not_exist(self):