1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-03 09:02:48 -05:00

Add EnableFeatureFlag extension method for tests

This commit is contained in:
Thomas Rittson
2023-10-10 14:15:43 +10:00
parent d9b0f01b72
commit 05192a9a8d
2 changed files with 13 additions and 5 deletions

View File

@ -1,4 +1,6 @@
using AutoFixture; using AutoFixture;
using Bit.Core;
using Bit.Core.Context;
using Bit.Core.Services; using Bit.Core.Services;
using Bit.Core.Settings; using Bit.Core.Settings;
using NSubstitute; using NSubstitute;
@ -47,4 +49,14 @@ public static class SutProviderExtensions
.SetDependency(mockHttpClientFactory) .SetDependency(mockHttpClientFactory)
.Create(); .Create();
} }
public static SutProvider<T> EnableFeatureFlag<T>(this SutProvider<T> sutProvider,
string featureFlagKey)
{
sutProvider.GetDependency<IFeatureService>()
.IsEnabled(featureFlagKey, Arg.Any<ICurrentContext>(), Arg.Any<bool>())
.Returns(true);
return sutProvider;
}
} }

View File

@ -112,11 +112,7 @@ public class CollectionServiceTest
{ {
collection.Id = default; collection.Id = default;
sutProvider.GetDependency<IOrganizationRepository>().GetByIdAsync(organization.Id).Returns(organization); sutProvider.GetDependency<IOrganizationRepository>().GetByIdAsync(organization.Id).Returns(organization);
sutProvider.EnableFeatureFlag(FeatureFlagKeys.FlexibleCollections);
// TODO: move to customization / attribute
sutProvider.GetDependency<IFeatureService>()
.IsEnabled(FeatureFlagKeys.FlexibleCollections, Arg.Any<ICurrentContext>())
.Returns(true);
var ex = await Assert.ThrowsAsync<BadRequestException>(() => sutProvider.Sut.SaveAsync(collection, null, users)); var ex = await Assert.ThrowsAsync<BadRequestException>(() => sutProvider.Sut.SaveAsync(collection, null, users));
Assert.Contains("At least one member or group must have can manage permission.", ex.Message); Assert.Contains("At least one member or group must have can manage permission.", ex.Message);