private void categoryButton_Click(object sender, EventArgs e) { if (current == null) { return; } CategoryChange cc = new CategoryChange(current); if (cc.ShowDialog() == DialogResult.OK) { ShowTags(); } }
public async Task ExecuteAddsLinkToExistingCategoryUsingCaseInsensitiveNameMatchTest(string name) { var profile = Model.Create <Profile>(); var changes = Model.Create <ProfileChangeResult>().Set(x => x.CategoryChanges.Clear()); var change = new CategoryChange { CategoryGroup = CategoryGroup.Gender, CategoryName = name, ChangeType = CategoryLinkChangeType.Add }; var category = Model.Create <Category>().Set(x => x.Name = "Female") .Set(x => x.Group = CategoryGroup.Gender); var categories = Model.Create <List <Category> >(); var previousLinkCount = category.LinkCount; changes.CategoryChanges.Add(change); categories.Add(category); var profileStore = Substitute.For <IProfileStore>(); var categoryStore = Substitute.For <ICategoryStore>(); var linkStore = Substitute.For <ICategoryLinkStore>(); var profileCache = Substitute.For <IProfileCache>(); var cacheManager = Substitute.For <ICategoryCache>(); var eventTrigger = Substitute.For <IEventTrigger>(); var sut = new ProfileChangeProcessor( profileStore, categoryStore, linkStore, eventTrigger, profileCache, cacheManager); using (var tokenSource = new CancellationTokenSource()) { categoryStore.GetAllCategories(tokenSource.Token).Returns(categories); await sut.Execute(profile, changes, tokenSource.Token).ConfigureAwait(false); await categoryStore.Received().StoreCategory(category, tokenSource.Token).ConfigureAwait(false); await categoryStore.Received().StoreCategory( Arg.Is <Category>(x => x.LinkCount == previousLinkCount + 1), tokenSource.Token).ConfigureAwait(false); cacheManager.Received(1).StoreCategories( Verify.That <ICollection <Category> >( x => x.Should().Contain( y => y.Group == category.Group && y.Name == category.Name && y.LinkCount == previousLinkCount + 1))); categories.Should().Contain( x => x.Group == category.Group && x.Name == category.Name && x.LinkCount == previousLinkCount + 1); await linkStore.Received().StoreCategoryLink( Arg.Is <CategoryGroup>(x => x == category.Group), Arg.Is <string>(x => x == category.Name), Arg.Is <CategoryLinkChange>( x => x.ChangeType == CategoryLinkChangeType.Add && x.ProfileId == profile.Id), tokenSource.Token).ConfigureAwait(false); } }