From c6a7e90c1a23fff5e96f2a4b82eaafb78687b8b2 Mon Sep 17 00:00:00 2001 From: "nicolas.dorier" Date: Fri, 14 Jan 2022 17:48:15 +0900 Subject: [PATCH] Warning if not using 'is not null' --- .editorconfig | 2 ++ .../JsonConverters/NodeUriJsonConverter.cs | 2 +- .../Providers/BackgroundFetcherRateProvider.cs | 2 +- BTCPayServer.Tests/SeleniumTester.cs | 2 +- BTCPayServer/Controllers/UIInvoiceController.UI.cs | 8 ++++---- BTCPayServer/Controllers/UIStoresController.cs | 2 +- BTCPayServer/Extensions/ControllerBaseExtensions.cs | 2 +- BTCPayServer/HostedServices/WebhookSender.cs | 2 +- BTCPayServer/Security/GreenField/APIKeyExtensions.cs | 2 +- 9 files changed, 13 insertions(+), 11 deletions(-) diff --git a/.editorconfig b/.editorconfig index 5fefdb3da..b2d120d60 100644 --- a/.editorconfig +++ b/.editorconfig @@ -121,8 +121,10 @@ csharp_space_between_method_declaration_name_and_open_parenthesis = false csharp_space_between_method_declaration_parameter_list_parentheses = false csharp_space_between_parentheses = false csharp_space_between_square_brackets = false +csharp_style_prefer_null_check_over_type_check = true:warning # C++ Files + [*.{cpp,h,in}] curly_bracket_next_line = true indent_brace_style = Allman diff --git a/BTCPayServer.Client/JsonConverters/NodeUriJsonConverter.cs b/BTCPayServer.Client/JsonConverters/NodeUriJsonConverter.cs index c47eab9aa..69fc12946 100644 --- a/BTCPayServer.Client/JsonConverters/NodeUriJsonConverter.cs +++ b/BTCPayServer.Client/JsonConverters/NodeUriJsonConverter.cs @@ -19,7 +19,7 @@ namespace BTCPayServer.Client.JsonConverters public override void WriteJson(JsonWriter writer, [AllowNull] NodeInfo value, JsonSerializer serializer) { - if (value is NodeInfo) + if (value is not null) writer.WriteValue(value.ToString()); } } diff --git a/BTCPayServer.Rating/Providers/BackgroundFetcherRateProvider.cs b/BTCPayServer.Rating/Providers/BackgroundFetcherRateProvider.cs index 9b3ff43a9..472c52c43 100644 --- a/BTCPayServer.Rating/Providers/BackgroundFetcherRateProvider.cs +++ b/BTCPayServer.Rating/Providers/BackgroundFetcherRateProvider.cs @@ -95,7 +95,7 @@ namespace BTCPayServer.Services.Rates { LastRequested = LastRequested }; - if (_Latest is LatestFetch fetch && fetch.Latest is PairRate[]) + if (_Latest is LatestFetch fetch && fetch.Latest is not null) { state.LastUpdated = fetch.Updated; state.Rates = fetch.Latest diff --git a/BTCPayServer.Tests/SeleniumTester.cs b/BTCPayServer.Tests/SeleniumTester.cs index bf2d502a8..d9e0dfcc2 100644 --- a/BTCPayServer.Tests/SeleniumTester.cs +++ b/BTCPayServer.Tests/SeleniumTester.cs @@ -479,7 +479,7 @@ namespace BTCPayServer.Tests currencyEl.Clear(); currencyEl.SendKeys(currency); Driver.FindElement(By.Id("BuyerEmail")).SendKeys(refundEmail); - if (defaultPaymentMethod is string) + if (defaultPaymentMethod is not null) new SelectElement(Driver.FindElement(By.Name("DefaultPaymentMethod"))).SelectByValue(defaultPaymentMethod); if (requiresRefundEmail is bool) new SelectElement(Driver.FindElement(By.Name("RequiresRefundEmail"))).SelectByValue(requiresRefundEmail == true ? "1" : "2"); diff --git a/BTCPayServer/Controllers/UIInvoiceController.UI.cs b/BTCPayServer/Controllers/UIInvoiceController.UI.cs index bc8611e8a..c593ce72e 100644 --- a/BTCPayServer/Controllers/UIInvoiceController.UI.cs +++ b/BTCPayServer/Controllers/UIInvoiceController.UI.cs @@ -500,21 +500,21 @@ namespace BTCPayServer.Controllers var enabledPaymentIds = store.GetEnabledPaymentIds(_NetworkProvider); PaymentMethodId? invoicePaymentId = invoice.GetDefaultPaymentMethod(); PaymentMethodId? storePaymentId = store.GetDefaultPaymentId(); - if (invoicePaymentId is PaymentMethodId) + if (invoicePaymentId is not null) { if (enabledPaymentIds.Contains(invoicePaymentId)) paymentMethodId = invoicePaymentId; } - if (paymentMethodId is null && storePaymentId is PaymentMethodId) + if (paymentMethodId is null && storePaymentId is not null) { if (enabledPaymentIds.Contains(storePaymentId)) paymentMethodId = storePaymentId; } - if (paymentMethodId is null && invoicePaymentId is PaymentMethodId) + if (paymentMethodId is null && invoicePaymentId is not null) { paymentMethodId = invoicePaymentId.FindNearest(enabledPaymentIds); } - if (paymentMethodId is null && storePaymentId is PaymentMethodId) + if (paymentMethodId is null && storePaymentId is not null) { paymentMethodId = storePaymentId.FindNearest(enabledPaymentIds); } diff --git a/BTCPayServer/Controllers/UIStoresController.cs b/BTCPayServer/Controllers/UIStoresController.cs index 31e69174b..d8f57ca0c 100644 --- a/BTCPayServer/Controllers/UIStoresController.cs +++ b/BTCPayServer/Controllers/UIStoresController.cs @@ -419,7 +419,7 @@ namespace BTCPayServer.Controllers { var enabled = storeData.GetEnabledPaymentIds(_NetworkProvider); var defaultPaymentId = storeData.GetDefaultPaymentId(); - var defaultChoice = defaultPaymentId is PaymentMethodId ? defaultPaymentId.FindNearest(enabled) : null; + var defaultChoice = defaultPaymentId is not null ? defaultPaymentId.FindNearest(enabled) : null; if (defaultChoice is null) { defaultChoice = enabled.FirstOrDefault(e => e.CryptoCode == "BTC" && e.PaymentType == PaymentTypes.BTCLike) ?? diff --git a/BTCPayServer/Extensions/ControllerBaseExtensions.cs b/BTCPayServer/Extensions/ControllerBaseExtensions.cs index f8771b28c..73bc7599f 100644 --- a/BTCPayServer/Extensions/ControllerBaseExtensions.cs +++ b/BTCPayServer/Extensions/ControllerBaseExtensions.cs @@ -40,7 +40,7 @@ namespace BTCPayServer // but we want searchTerm to be null only if the user is browsing the page via some link // NOT if the user entered some empty search var searchTerm = model.SearchTerm; - searchTerm = searchTerm is string ? searchTerm : + searchTerm = searchTerm is not null ? searchTerm : ctrl.Request.Query.ContainsKey(nameof(searchTerm)) ? string.Empty : null; if (searchTerm is null) diff --git a/BTCPayServer/HostedServices/WebhookSender.cs b/BTCPayServer/HostedServices/WebhookSender.cs index 2cde208cd..0ab0da766 100644 --- a/BTCPayServer/HostedServices/WebhookSender.cs +++ b/BTCPayServer/HostedServices/WebhookSender.cs @@ -254,7 +254,7 @@ namespace BTCPayServer.HostedServices var result = await SendAndSaveDelivery(ctx, cancellationToken); if (ctx.WebhookBlob.AutomaticRedelivery && !result.Success && - result.DeliveryId is string) + result.DeliveryId is not null) { var originalDeliveryId = result.DeliveryId; foreach (var wait in new[] diff --git a/BTCPayServer/Security/GreenField/APIKeyExtensions.cs b/BTCPayServer/Security/GreenField/APIKeyExtensions.cs index ee5815756..52f4d8ff7 100644 --- a/BTCPayServer/Security/GreenField/APIKeyExtensions.cs +++ b/BTCPayServer/Security/GreenField/APIKeyExtensions.cs @@ -58,7 +58,7 @@ namespace BTCPayServer.Security.Greenfield { if (Permission.TryParse(claim.Value, out var claimPermission)) { - if (requireUnscoped && claimPermission.Scope is string) + if (requireUnscoped && claimPermission.Scope is not null) continue; if (claimPermission.Contains(permission)) {