public async Task DeleteLetterHead_WhenCalledWithNumber_ReturnsRedirectToActionResult()
        {
            Controller sut = CreateSut();

            IActionResult result = await sut.DeleteLetterHead(_fixture.Create <int>());

            Assert.That(result, Is.TypeOf <RedirectToActionResult>());
        }
        public async Task DeleteLetterHead_WhenCalledWithNumber_ReturnsRedirectToActionResultWhereActionNameIsEqualToLetterHeads()
        {
            Controller sut = CreateSut();

            RedirectToActionResult result = (RedirectToActionResult)await sut.DeleteLetterHead(_fixture.Create <int>());

            Assert.That(result.ActionName, Is.EqualTo("LetterHeads"));
        }
        public async Task DeleteLetterHead_WhenCalledWithNumber_AssertPublishAsyncWasCalledOnCommandBus()
        {
            Controller sut = CreateSut();

            int number = _fixture.Create <int>();
            await sut.DeleteLetterHead(number);

            _commandBusMock.Verify(m => m.PublishAsync(It.Is <IDeleteLetterHeadCommand>(value => value.Number == number)), Times.Once);
        }