public async Task GetAsync_ShouldReturnDefault_WithNonExistingFeatureName() { var nonExistingFeatureName = "AnyOtherFeature"; var result = await blogFeatureAppService.GetOrDefaultAsync(testData.Blog_Id, nonExistingFeatureName); var defaultFeature = new BlogFeature(Guid.Empty, nonExistingFeatureName); result.ShouldNotBeNull(); result.IsEnabled.ShouldBe(defaultFeature.IsEnabled); }
public async Task SetAsync(Guid blogId, string featureName, bool isEnabled) { var blogFeature = await BlogFeatureRepository.FindAsync(blogId, featureName); if (blogFeature == null) { var newBlogFeature = new BlogFeature(blogId, featureName, isEnabled); await BlogFeatureRepository.InsertAsync(newBlogFeature); } else { blogFeature.IsEnabled = isEnabled; await BlogFeatureRepository.UpdateAsync(blogFeature); } }
public async Task SetAsync(Guid blogId, string featureName, bool isEnabled) { var blogFeature = await BlogFeatureRepository.FindAsync(blogId, featureName); if (blogFeature == null) { var newBlogFeature = new BlogFeature(blogId, featureName, isEnabled); await BlogFeatureRepository.InsertAsync(newBlogFeature); } else { blogFeature.IsEnabled = isEnabled; await BlogFeatureRepository.UpdateAsync(blogFeature); } await UnitOfWorkManager.Current.SaveChangesAsync(); await EventBus.PublishAsync(new BlogFeatureChangedEto { BlogId = blogId, FeatureName = featureName, IsEnabled = isEnabled }); }
public bool Equals(BlogFeature other) { return(BlogId == other?.BlogId && FeatureName == other?.FeatureName); }