diff options
| author | MarcoFalke <[email protected]> | 2018-09-06 11:29:40 +0200 |
|---|---|---|
| committer | Wladimir J. van der Laan <[email protected]> | 2018-09-06 13:54:05 +0200 |
| commit | eb202ea21de1fbcc32fb3db63fcce4135b7a2849 (patch) | |
| tree | 8a1f7e378287fc522c99b6a4b800bcb412943220 /test | |
| parent | util: Report parse errors in configuration file (diff) | |
| download | discoin-eb202ea21de1fbcc32fb3db63fcce4135b7a2849.tar.xz discoin-eb202ea21de1fbcc32fb3db63fcce4135b7a2849.zip | |
test: Add test for config file parsing errors
Github-Pull: #14105
Rebased-From: ed2332aeffb071a3404be9cff8f9fb8a81a9fbfb
Tree-SHA512: 17fa88a2848f1c9c9c8a127b5ea4c45761ce8e06a609dd40f8e90bb9117d88c9d2c81e752c9c0f1a44ecadbb5bedd2973bc4548da2a6d463c789797191e85ab1
Diffstat (limited to 'test')
| -rwxr-xr-x | test/functional/feature_config_args.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/functional/feature_config_args.py b/test/functional/feature_config_args.py index 62091048f..9be59b32b 100755 --- a/test/functional/feature_config_args.py +++ b/test/functional/feature_config_args.py @@ -14,8 +14,29 @@ class ConfArgsTest(BitcoinTestFramework): self.setup_clean_chain = True self.num_nodes = 1 + def test_config_file_parser(self): + # Assume node is stopped + + inc_conf_file_path = os.path.join(self.nodes[0].datadir, 'include.conf') + with open(os.path.join(self.nodes[0].datadir, 'bitcoin.conf'), 'a', encoding='utf-8') as conf: + conf.write('includeconf={}\n'.format(inc_conf_file_path)) + + with open(inc_conf_file_path, 'w', encoding='utf-8') as conf: + conf.write('-dash=1\n') + self.nodes[0].assert_start_raises_init_error(expected_msg='Error reading configuration file: parse error on line 1: -dash=1, options in configuration file must be specified without leading -') + + with open(inc_conf_file_path, 'w', encoding='utf-8') as conf: + conf.write('nono\n') + self.nodes[0].assert_start_raises_init_error(expected_msg='Error reading configuration file: parse error on line 1: nono, if you intended to specify a negated option, use nono=1 instead') + + with open(inc_conf_file_path, 'w', encoding='utf-8') as conf: + conf.write('') # clear + def run_test(self): self.stop_node(0) + + self.test_config_file_parser() + # Remove the -datadir argument so it doesn't override the config file self.nodes[0].args = [arg for arg in self.nodes[0].args if not arg.startswith("-datadir")] |