From 23232422e507a90922c0870611cade5c789bb83a Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Tue, 28 Nov 2017 15:38:46 +0100 Subject: [PATCH] test: Add test for `-debuglogfile` --- test/functional/feature_logging.py | 42 ++++++++++++++++++++++++++++++ test/functional/test_runner.py | 1 + 2 files changed, 43 insertions(+) create mode 100755 test/functional/feature_logging.py diff --git a/test/functional/feature_logging.py b/test/functional/feature_logging.py new file mode 100755 index 0000000000..24591e176f --- /dev/null +++ b/test/functional/feature_logging.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 +# Copyright (c) 2017 The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or http://www.opensource.org/licenses/mit-license.php. +"""Test debug logging.""" + +import os + +from test_framework.test_framework import BitcoinTestFramework + +class LoggingTest(BitcoinTestFramework): + def set_test_params(self): + self.num_nodes = 1 + self.setup_clean_chain = True + + def run_test(self): + # test default log file name + assert os.path.isfile(os.path.join(self.nodes[0].datadir, "regtest", "debug.log")) + + # test alternative log file name in datadir + self.restart_node(0, ["-debuglogfile=foo.log"]) + assert os.path.isfile(os.path.join(self.nodes[0].datadir, "regtest", "foo.log")) + + # test alternative log file name outside datadir + tempname = os.path.join(self.options.tmpdir, "foo.log") + self.restart_node(0, ["-debuglogfile=%s" % tempname]) + assert os.path.isfile(tempname) + + # check that invalid log (relative) will cause error + self.stop_node(0) + self.assert_start_raises_init_error(0, ["-debuglogfile=ssdksjdf/sdasdfa/sdfsdfsfd"], + "Error: Could not open debug log file") + + # check that invalid log (absolute) will cause error + self.stop_node(0) + invalidname = os.path.join(self.options.tmpdir, "foo/foo.log") + self.assert_start_raises_init_error(0, ["-debuglogfile=%s" % invalidname], + "Error: Could not open debug log file") + + +if __name__ == '__main__': + LoggingTest().main() diff --git a/test/functional/test_runner.py b/test/functional/test_runner.py index d953e1585c..2202d65b5e 100755 --- a/test/functional/test_runner.py +++ b/test/functional/test_runner.py @@ -126,6 +126,7 @@ BASE_SCRIPTS= [ 'p2p-fingerprint.py', 'uacomment.py', 'p2p-acceptblock.py', + 'feature_logging.py', ] EXTENDED_SCRIPTS = [