public void WhenTagIsAddedThenProjectCanBeRemoved() { // Given var tagId = Guid.NewGuid(); var addTagCommand = new AddTagCommand { TagId = tagId, TagName = "TestProject", TagNotes = "Here be dragons", }; Commander.Send(addTagCommand); // When var removedTagCommand = new RemoveTagCommand { TagId = tagId, }; Commander.Send(removedTagCommand); // Then var findTagsByIdsQuery = new FindTagsByIdsQuery { TagIds = new List <Guid> { tagId }, }; var result = Querier .Search(findTagsByIdsQuery) .Tags.SingleOrDefault(); Assert.That(result, Is.Null); }
public void Handle(RemoveTagCommand command) { var tag = Context.Find <Tag>(command.TagId); if (tag == null) { throw new BusinessException("The provided tag {0} does not exists in data store.", command.TagId); } Context.Remove(tag); }