diff --git a/BTCPayServer.Tests/BTCPayServerTester.cs b/BTCPayServer.Tests/BTCPayServerTester.cs index bfb8c27a1..8209d3c03 100644 --- a/BTCPayServer.Tests/BTCPayServerTester.cs +++ b/BTCPayServer.Tests/BTCPayServerTester.cs @@ -256,18 +256,5 @@ namespace BTCPayServer.Tests if (_Host != null) _Host.Dispose(); } - - public void WaitFullNodeAvailable(string cryptoCode) - { - using (var cts = new CancellationTokenSource(5000)) - { - var dashboard = GetService(); - while (!dashboard.IsFullySynched(cryptoCode, out var unused)) - { - Thread.Sleep(10); - cts.Token.ThrowIfCancellationRequested(); - } - } - } } } diff --git a/BTCPayServer.Tests/ServerTester.cs b/BTCPayServer.Tests/ServerTester.cs index 9772035d9..2129776cd 100644 --- a/BTCPayServer.Tests/ServerTester.cs +++ b/BTCPayServer.Tests/ServerTester.cs @@ -84,7 +84,7 @@ namespace BTCPayServer.Tests /// Connect a customer LN node to the merchant LN node /// /// - public Task EnsureConnectedToDestinations() + public Task EnsureChannelsSetup() { return BTCPayServer.Lightning.Tests.ConnectChannels.ConnectAll(ExplorerNode, GetLightningSenderClients(), GetLightningDestClients()); } diff --git a/BTCPayServer.Tests/UnitTest1.cs b/BTCPayServer.Tests/UnitTest1.cs index da0006093..b18e074a2 100644 --- a/BTCPayServer.Tests/UnitTest1.cs +++ b/BTCPayServer.Tests/UnitTest1.cs @@ -399,18 +399,18 @@ namespace BTCPayServer.Tests [Fact] [Trait("Unreliable", "Unreliable")] - public void CanSetLightningServer() + public async Task CanSetLightningServer() { using (var tester = ServerTester.Create()) { tester.Start(); + await tester.EnsureChannelsSetup(); var user = tester.NewAccount(); user.GrantAccess(); var storeController = user.GetController(); Assert.IsType(storeController.UpdateStore()); Assert.IsType(storeController.AddLightningNode(user.StoreId, "BTC")); - tester.PayTester.WaitFullNodeAvailable("BTC"); var testResult = storeController.AddLightningNode(user.StoreId, new LightningNodeViewModel() { ConnectionString = "type=charge;server=" + tester.MerchantCharge.Client.Uri.AbsoluteUri, @@ -464,13 +464,12 @@ namespace BTCPayServer.Tests using (var tester = ServerTester.Create()) { tester.Start(); + await tester.EnsureChannelsSetup(); var user = tester.NewAccount(); user.GrantAccess(); user.RegisterLightningNode("BTC", type); user.RegisterDerivationScheme("BTC"); - await tester.EnsureConnectedToDestinations(); - await CanSendLightningPaymentCore(tester, user); await Task.WhenAll(Enumerable.Range(0, 5) @@ -1356,11 +1355,12 @@ namespace BTCPayServer.Tests [Fact] [Trait("Unreliable", "Unreliable")] - public void CanSetPaymentMethodLimits() + public async Task CanSetPaymentMethodLimits() { using (var tester = ServerTester.Create()) { tester.Start(); + await tester.EnsureChannelsSetup(); var user = tester.NewAccount(); user.GrantAccess(); user.RegisterDerivationScheme("BTC"); diff --git a/BTCPayServer/Payments/Lightning/LightningLikePaymentHandler.cs b/BTCPayServer/Payments/Lightning/LightningLikePaymentHandler.cs index b5fd9c5c2..71cefc096 100644 --- a/BTCPayServer/Payments/Lightning/LightningLikePaymentHandler.cs +++ b/BTCPayServer/Payments/Lightning/LightningLikePaymentHandler.cs @@ -90,10 +90,10 @@ namespace BTCPayServer.Payments.Lightning throw new PaymentMethodUnavailableException($"No lightning node public address has been configured"); } - var blocksGap = Math.Abs(info.BlockHeight - summary.Status.ChainHeight); + var blocksGap = summary.Status.ChainHeight - info.BlockHeight; if (blocksGap > 10) { - throw new PaymentMethodUnavailableException($"The lightning is not synched ({blocksGap} blocks)"); + throw new PaymentMethodUnavailableException($"The lightning node is not synched ({blocksGap} blocks left)"); } return info.NodeInfo;