public void FactoryAddActivatedFeaturesCanAddDefinitionsIfItDoesNotExist() { // Arrange Guid[] fIds = { TestFeatureDefinitions.Ids.Id008, TestFeatureDefinitions.Ids.Id009, TestFeatureDefinitions.Ids.Id010 }; Guid[] lIds = { TestLocations.Ids.Id005, TestLocations.Ids.Id008, TestLocations.Ids.Id009 }; var featureDefinitions = TestFeatureDefinitions.GetFeatureDefinitions(fIds, lIds).ToList(); // Act featureDefinitions.AddActivatedFeatures(Loaded3LocationsWithFirst4ActivatedFeaturesEach.LoadedFeatures); // Assert var expectedFeatureDefinitions = 7; Assert.Equal(expectedFeatureDefinitions, featureDefinitions.Count()); foreach (Guid featureId in fIds) { var definition = featureDefinitions.FirstOrDefault(fd => fd.Id == featureId); var expectedActivatedFeatures = 3; Assert.Equal(expectedActivatedFeatures, definition.ActivatedFeatures.Count()); } }
public void FactoryAddActivatedFeaturesDoesNotAddExistingDefinitions() { // Arrange Guid[] fIds = { TestFeatureDefinitions.Ids.Id004, TestFeatureDefinitions.Ids.Id001, TestFeatureDefinitions.Ids.Id002, TestFeatureDefinitions.Ids.Id003 }; Guid[] lIds = { TestLocations.Ids.Id005, TestLocations.Ids.Id006, TestLocations.Ids.Id007 }; var featureDefinitions = TestFeatureDefinitions.GetFeatureDefinitions(fIds, lIds).ToList(); // Act featureDefinitions.AddActivatedFeatures(Loaded3LocationsWithFirst4ActivatedFeaturesEach.LoadedFeatures); // Assert var expectedFeatureDefinitions = 4; Assert.Equal(expectedFeatureDefinitions, featureDefinitions.Count()); foreach (Guid featureId in fIds) { var definition = featureDefinitions.FirstOrDefault(fd => fd.Id == featureId); var expectedActivatedFeatures = 6; Assert.Equal(expectedActivatedFeatures, definition.ActivatedFeatures.Count()); } }
public static IEnumerable <FeatureDefinition> GetFeatureDefinitions([NotNull] Guid[] definitionIds, Guid[] locationIdsOfActivatedFeatures = null) { var definitions = new List <FeatureDefinition>(); foreach (Guid fdId in definitionIds) { var fd = TestFeatureDefinitions.GetFeatureDefinition(fdId); if (locationIdsOfActivatedFeatures != null) { foreach (Guid lId in locationIdsOfActivatedFeatures) { var feat = TestActivatedFeatures.GetNormalActivatedFeature(fd, lId); fd.ToggleActivatedFeature(feat, true); } } definitions.Add(fd); } return(definitions); }
public static IEnumerable <Location> GetLocations([NotNull] Guid[] locationIds, Guid[] activatedFeatureIds = null) { var locations = new List <Location>(); foreach (Guid l in locationIds) { var loc = new Location(l, Constants.GenericValues.DisplayName, Ids.Id010, Core.Models.Enums.Scope.Web, Constants.GenericValues.Url, null, 0); if (activatedFeatureIds != null) { foreach (Guid f in activatedFeatureIds) { var fd = TestFeatureDefinitions.GetFeatureDefinition(f); var feat = TestActivatedFeatures.GetNormalActivatedFeature(fd, l); loc.ToggleActivatedFeature(feat, true); } } locations.Add(loc); } return(locations); }