From eac2b9f0b877f50c042f94cc658602fe1d777e1b Mon Sep 17 00:00:00 2001 From: Alex Morask <144709477+amorask-bitwarden@users.noreply.github.com> Date: Thu, 25 Apr 2024 09:21:05 -0400 Subject: [PATCH] [AC-2488] Return default state for billing metadata when Organization has no Stripe entities (#4018) * Return default state for billing metadata when no stripe entities * Fix tests --- src/Core/Billing/Models/OrganizationMetadataDTO.cs | 6 +++++- .../Queries/Implementations/OrganizationBillingQueries.cs | 2 +- .../Billing/Queries/OrganizationBillingQueriesTests.cs | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Core/Billing/Models/OrganizationMetadataDTO.cs b/src/Core/Billing/Models/OrganizationMetadataDTO.cs index fc395e8894..e8f6c3422e 100644 --- a/src/Core/Billing/Models/OrganizationMetadataDTO.cs +++ b/src/Core/Billing/Models/OrganizationMetadataDTO.cs @@ -1,4 +1,8 @@ namespace Bit.Core.Billing.Models; public record OrganizationMetadataDTO( - bool IsOnSecretsManagerStandalone); + bool IsOnSecretsManagerStandalone) +{ + public static OrganizationMetadataDTO Default() => new( + IsOnSecretsManagerStandalone: default); +} diff --git a/src/Core/Billing/Queries/Implementations/OrganizationBillingQueries.cs b/src/Core/Billing/Queries/Implementations/OrganizationBillingQueries.cs index 4cf5f96910..9f6a8b2ecb 100644 --- a/src/Core/Billing/Queries/Implementations/OrganizationBillingQueries.cs +++ b/src/Core/Billing/Queries/Implementations/OrganizationBillingQueries.cs @@ -29,7 +29,7 @@ public class OrganizationBillingQueries( if (customer == null || subscription == null) { - return null; + return OrganizationMetadataDTO.Default(); } var isOnSecretsManagerStandalone = IsOnSecretsManagerStandalone(organization, customer, subscription); diff --git a/test/Core.Test/Billing/Queries/OrganizationBillingQueriesTests.cs b/test/Core.Test/Billing/Queries/OrganizationBillingQueriesTests.cs index f80c3c3266..f98bf58e54 100644 --- a/test/Core.Test/Billing/Queries/OrganizationBillingQueriesTests.cs +++ b/test/Core.Test/Billing/Queries/OrganizationBillingQueriesTests.cs @@ -35,7 +35,7 @@ public class OrganizationBillingQueriesTests var metadata = await sutProvider.Sut.GetMetadata(organizationId); - Assert.Null(metadata); + Assert.False(metadata.IsOnSecretsManagerStandalone); } [Theory, BitAutoData] @@ -50,7 +50,7 @@ public class OrganizationBillingQueriesTests var metadata = await sutProvider.Sut.GetMetadata(organizationId); - Assert.Null(metadata); + Assert.False(metadata.IsOnSecretsManagerStandalone); } [Theory, BitAutoData]