public async Task AccountingInformation_WhenNoAccountingWasReturnedFromQueryBus_ReturnsBadRequestResult()
        {
            Controller sut = CreateSut(false);

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

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

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

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

            int accountingNumber = _fixture.Create <int>();
            await sut.AccountingInformation(accountingNumber);

            _queryBusMock.Verify(m => m.QueryAsync <IGetAccountingQuery, IAccounting>(It.Is <IGetAccountingQuery>(query =>
                                                                                                                  query != null &&
                                                                                                                  query.AccountingNumber == accountingNumber &&
                                                                                                                  query.StatusDate == DateTime.Today)),
                                 Times.Once);
        }
        public async Task AccountingInformation_WhenAccountingWasReturnedFromQueryBus_ReturnsPartialViewResultWhereModelIsAccountingPresentationViewModel()
        {
            int         accountingNumber = _fixture.Create <int>();
            IAccounting accounting       = _fixture.BuildAccountingMock(accountingNumber).Object;
            Controller  sut = CreateSut(accounting: accounting);

            PartialViewResult result = (PartialViewResult)await sut.AccountingInformation(_fixture.Create <int>());

            Assert.That(result.Model, Is.TypeOf <AccountingPresentationViewModel>());

            AccountingPresentationViewModel accountingPresentationViewModel = (AccountingPresentationViewModel)result.Model;

            Assert.That(accountingPresentationViewModel, Is.Not.Null);
            Assert.That(accountingPresentationViewModel.AccountingNumber, Is.EqualTo(accountingNumber));
        }