From 64c660c19e806a019e19079f4367ecec87cb85b8 Mon Sep 17 00:00:00 2001 From: Boris Nagaev Date: Mon, 18 Nov 2024 12:15:00 -0300 Subject: [PATCH] itest: test "lnd --debuglevel=show" command Tests that "lnd --debuglevel=show" command works and prints the list of supported subsystems. --- itest/config.go | 28 ++++++++++++++++++++++++++++ itest/list_on_test.go | 4 ++++ 2 files changed, 32 insertions(+) create mode 100644 itest/config.go diff --git a/itest/config.go b/itest/config.go new file mode 100644 index 000000000..98e633652 --- /dev/null +++ b/itest/config.go @@ -0,0 +1,28 @@ +//go:build integration + +package itest + +import ( + "os/exec" + + "github.com/lightningnetwork/lnd/lntest" + "github.com/stretchr/testify/require" +) + +// testDebuglevelShow tests that "lnd --debuglevel=show" command works and +// prints the list of supported subsystems. +func testDebuglevelShow(ht *lntest.HarnessTest) { + // We can't use ht.NewNode, because it adds more arguments to the + // command line (e.g. flags configuring bitcoin backend), but we want to + // make sure that "lnd --debuglevel=show" works without any other flags. + lndBinary := getLndBinary(ht.T) + cmd := exec.Command(lndBinary, "--debuglevel=show") + stdoutStderrBytes, err := cmd.CombinedOutput() + require.NoError(ht, err, "failed to run 'lnd --debuglevel=show'") + + // Make sure that the output contains the list of supported subsystems + // and that the list is not empty. We search PEER subsystem. + stdoutStderr := string(stdoutStderrBytes) + require.Contains(ht, stdoutStderr, "Supported subsystems") + require.Contains(ht, stdoutStderr, "PEER") +} diff --git a/itest/list_on_test.go b/itest/list_on_test.go index c5fa7cebf..68c923c3b 100644 --- a/itest/list_on_test.go +++ b/itest/list_on_test.go @@ -702,4 +702,8 @@ var allTestCases = []*lntest.TestCase{ Name: "send to route failed htlc timeout", TestFunc: testSendToRouteFailHTLCTimeout, }, + { + Name: "debuglevel show", + TestFunc: testDebuglevelShow, + }, }