diff --git a/BTCPayServer.Tests/AltcoinTests/AltcoinTests.cs b/BTCPayServer.Tests/AltcoinTests/AltcoinTests.cs index 4a4e00bd8..5b301209f 100644 --- a/BTCPayServer.Tests/AltcoinTests/AltcoinTests.cs +++ b/BTCPayServer.Tests/AltcoinTests/AltcoinTests.cs @@ -72,14 +72,14 @@ namespace BTCPayServer.Tests // Setup Lightning var controller = user.GetController(); - var lightningVm = (LightningNodeViewModel)Assert.IsType(await controller.SetupLightningNode(user.StoreId, cryptoCode)).Model; + var lightningVm = (LightningNodeViewModel)Assert.IsType(controller.SetupLightningNode(user.StoreId, cryptoCode)).Model; Assert.True(lightningVm.Enabled); var response = await controller.SetLightningNodeEnabled(user.StoreId, cryptoCode, false); Assert.IsType(response); // Get enabled state from settings LightningSettingsViewModel lnSettingsModel; - response = controller.LightningSettings(user.StoreId, cryptoCode).GetAwaiter().GetResult(); + response = controller.LightningSettings(user.StoreId, cryptoCode); lnSettingsModel = (LightningSettingsViewModel)Assert.IsType(response).Model; Assert.NotNull(lnSettingsModel?.ConnectionString); Assert.False(lnSettingsModel.Enabled); diff --git a/BTCPayServer.Tests/BTCPayServerTester.cs b/BTCPayServer.Tests/BTCPayServerTester.cs index eb201a9bd..9b7cd0611 100644 --- a/BTCPayServer.Tests/BTCPayServerTester.cs +++ b/BTCPayServer.Tests/BTCPayServerTester.cs @@ -339,5 +339,13 @@ namespace BTCPayServer.Tests var index = coinAverageMock.ExchangeRates.FindIndex(o => o.CurrencyPair == p); coinAverageMock.ExchangeRates[index] = new PairRate(p, bidAsk); } + + public async Task EnableExperimental() + { + var r = GetService(); + var p = await r.GetSettingAsync() ?? new PoliciesSettings(); + p.Experimental = true; + await r.UpdateSetting(p); + } } } diff --git a/BTCPayServer.Tests/GreenfieldAPITests.cs b/BTCPayServer.Tests/GreenfieldAPITests.cs index 327606128..a69e3caf5 100644 --- a/BTCPayServer.Tests/GreenfieldAPITests.cs +++ b/BTCPayServer.Tests/GreenfieldAPITests.cs @@ -2520,6 +2520,7 @@ namespace BTCPayServer.Tests { using var tester = CreateServerTester(); await tester.StartAsync(); + await tester.PayTester.EnableExperimental(); var unauthClient = new BTCPayServerClient(tester.PayTester.ServerUri); await AssertHttpError(401, async () => await unauthClient.GetCustodians()); @@ -2539,6 +2540,7 @@ namespace BTCPayServer.Tests using var tester = CreateServerTester(); await tester.StartAsync(); + await tester.PayTester.EnableExperimental(); var admin = tester.NewAccount(); await admin.GrantAccessAsync(true); @@ -2710,7 +2712,8 @@ namespace BTCPayServer.Tests { using var tester = CreateServerTester(); await tester.StartAsync(); - + await tester.PayTester.EnableExperimental(); + var admin = tester.NewAccount(); await admin.GrantAccessAsync(true); diff --git a/BTCPayServer.Tests/UnitTest1.cs b/BTCPayServer.Tests/UnitTest1.cs index 9d808365b..f7c33ff30 100644 --- a/BTCPayServer.Tests/UnitTest1.cs +++ b/BTCPayServer.Tests/UnitTest1.cs @@ -408,7 +408,7 @@ namespace BTCPayServer.Tests var storeController = user.GetController(); var storeResponse = storeController.GeneralSettings(); Assert.IsType(storeResponse); - Assert.IsType(await storeController.SetupLightningNode(user.StoreId, "BTC")); + Assert.IsType(storeController.SetupLightningNode(user.StoreId, "BTC")); storeController.SetupLightningNode(user.StoreId, new LightningNodeViewModel { @@ -430,7 +430,7 @@ namespace BTCPayServer.Tests new LightningNodeViewModel { ConnectionString = tester.MerchantCharge.Client.Uri.AbsoluteUri }, "save", "BTC").GetAwaiter().GetResult()); - storeResponse = storeController.LightningSettings(user.StoreId, "BTC").GetAwaiter().GetResult(); + storeResponse = storeController.LightningSettings(user.StoreId, "BTC"); var storeVm = Assert.IsType(Assert .IsType(storeResponse).Model); @@ -1571,7 +1571,7 @@ namespace BTCPayServer.Tests // enable unified QR code in settings var vm = Assert.IsType(Assert - .IsType(await user.GetController().LightningSettings(user.StoreId, cryptoCode)).Model + .IsType(user.GetController().LightningSettings(user.StoreId, cryptoCode)).Model ); vm.OnChainWithLnInvoiceFallback = true; Assert.IsType( @@ -1629,7 +1629,7 @@ namespace BTCPayServer.Tests // Activating LNUrl, we should still have only 1 payment criteria that can be set. user.RegisterLightningNode(cryptoCode, LightningConnectionType.Charge); - var lnSettingsVm = await user.GetController().LightningSettings(user.StoreId, cryptoCode).AssertViewModelAsync(); + var lnSettingsVm = user.GetController().LightningSettings(user.StoreId, cryptoCode).AssertViewModel(); lnSettingsVm.LNURLEnabled = true; lnSettingsVm.LNURLStandardInvoiceEnabled = true; Assert.IsType(user.GetController().LightningSettings(lnSettingsVm).Result); diff --git a/BTCPayServer/Components/MainNav/Default.cshtml b/BTCPayServer/Components/MainNav/Default.cshtml index 449fa9538..4f5dd5bd9 100644 --- a/BTCPayServer/Components/MainNav/Default.cshtml +++ b/BTCPayServer/Components/MainNav/Default.cshtml @@ -8,16 +8,15 @@ @using BTCPayServer.Abstractions.Extensions @using BTCPayServer.Abstractions.Contracts @using BTCPayServer.Client +@using BTCPayServer.Services @inject BTCPayServer.Services.BTCPayServerEnvironment Env @inject SignInManager SignInManager -@inject ISettingsRepository SettingsRepository +@inject PoliciesSettings PoliciesSettings +@inject ThemeSettings Theme @model BTCPayServer.Components.MainNav.MainNavViewModel @addTagHelper *, BundlerMinifier.TagHelpers -@{ - var theme = await SettingsRepository.GetTheme(); -}