public void WhenManageDeprecationFeatureIsEnabledAndManyVersions_ReturnsIfManageDeprecationForManyVersionsIsEnabled( bool isManyVersionsEnabled) { // Arrange var user = new User(); var allVersions = new List <Package>(); var registration = new PackageRegistration(); for (var i = 0; i < 1000; i++) { allVersions.Add(new Package { Key = i }); } registration.Packages = allVersions; var clientMock = new Mock <IFeatureFlagClient>(); clientMock .Setup(c => c.IsEnabled("NuGetGallery.ManageDeprecation", It.IsAny <IFlightUser>(), false)) .Returns(true); clientMock .Setup(c => c.IsEnabled("NuGetGallery.ManageDeprecationMany", It.IsAny <IFlightUser>(), true)) .Returns(isManyVersionsEnabled); var service = new FeatureFlagService(clientMock.Object); // Act & Assert Assert.Equal(isManyVersionsEnabled, service.IsManageDeprecationEnabled(user, registration)); Assert.Equal(isManyVersionsEnabled, service.IsManageDeprecationEnabled(user, allVersions)); }
public void WhenManageDeprecationFeatureIsDisabled_ReturnsFalse(bool hasManyVersions) { // Arrange var user = new User(); var registration = new PackageRegistration(); if (hasManyVersions) { for (var i = 0; i < 1000; i++) { registration.Packages.Add(new Package { Key = i }); } } var clientMock = new Mock <IFeatureFlagClient>(); clientMock .Setup(c => c.IsEnabled("NuGetGallery.ManageDeprecation", It.IsAny <IFlightUser>(), false)) .Returns(false); var service = new FeatureFlagService(clientMock.Object); // Act var result = service.IsManageDeprecationEnabled(user, registration); // Assert Assert.False(result); }
public void WhenManageDeprecationFeatureIsEnabledAndFewVersions_ReturnsTrue() { // Arrange var user = new User(); var registration = new PackageRegistration(); var allVersions = new List <Package>(); var clientMock = new Mock <IFeatureFlagClient>(); clientMock .Setup(c => c.IsEnabled("NuGetGallery.ManageDeprecation", It.IsAny <IFlightUser>(), false)) .Returns(true); var service = new FeatureFlagService(clientMock.Object); // Act & Assert Assert.True(service.IsManageDeprecationEnabled(user, registration)); Assert.True(service.IsManageDeprecationEnabled(user, allVersions)); }
public void WhenRegistrationNull_ThrowsArgumentNullException() { // Arrange var user = new User(); var clientMock = new Mock <IFeatureFlagClient>(MockBehavior.Strict); var service = new FeatureFlagService(clientMock.Object); // Act & Assert Assert.Throws <ArgumentNullException>( () => service.IsManageDeprecationEnabled(user, null)); }