Example #1
0
        public async Task CreateBudgetAccountGroup_WhenCalledWithValidModel_ReturnsRedirectToActionResult()
        {
            Controller sut = CreateSut();

            BudgetAccountGroupViewModel model = CreateModel();
            IActionResult result = await sut.CreateBudgetAccountGroup(model);

            Assert.That(result, Is.TypeOf <RedirectToActionResult>());
        }
Example #2
0
        public async Task CreateBudgetAccountGroup_WhenCalledWithInvalidModel_AssertPublishAsyncWasNotCalledOnCommandBus()
        {
            Controller sut = CreateSut(false);

            BudgetAccountGroupViewModel model = CreateModel();
            await sut.CreateBudgetAccountGroup(model);

            _commandBusMock.Verify(m => m.PublishAsync(It.IsAny <ICreateBudgetAccountGroupCommand>()), Times.Never);
        }
Example #3
0
        public async Task CreateBudgetAccountGroup_WhenCalledWithValidModel_ReturnsRedirectToActionResultWhereActionNameIsEqualToBudgetAccountGroups()
        {
            Controller sut = CreateSut();

            BudgetAccountGroupViewModel model  = CreateModel();
            RedirectToActionResult      result = (RedirectToActionResult)await sut.CreateBudgetAccountGroup(model);

            Assert.That(result.ActionName, Is.EqualTo("BudgetAccountGroups"));
        }
Example #4
0
        public async Task CreateBudgetAccountGroup_WhenCalledWithValidModel_AssertPublishAsyncWasCalledOnCommandBus()
        {
            Controller sut = CreateSut();

            BudgetAccountGroupViewModel model = CreateModel();
            await sut.CreateBudgetAccountGroup(model);

            _commandBusMock.Verify(m => m.PublishAsync(It.Is <ICreateBudgetAccountGroupCommand>(command => command.Number == model.Number && string.CompareOrdinal(command.Name, model.Name) == 0)), Times.Once);
        }
Example #5
0
        public async Task CreateBudgetAccountGroup_WhenCalledWithInvalidModel_ReturnsViewResultWhereViewNameIsEqualToCreateBudgetAccountGroup()
        {
            Controller sut = CreateSut(false);

            BudgetAccountGroupViewModel model = CreateModel();
            ViewResult result = (ViewResult)await sut.CreateBudgetAccountGroup(model);

            Assert.That(result.ViewName, Is.EqualTo("CreateBudgetAccountGroup"));
        }
        public async Task UpdateBudgetAccountGroup_WhenCalledWithInvalidModel_ReturnsViewResult()
        {
            Controller sut = CreateSut(modelIsValid: false);

            BudgetAccountGroupViewModel model = CreateModel();
            IActionResult result = await sut.UpdateBudgetAccountGroup(model);

            Assert.That(result, Is.TypeOf <ViewResult>());
        }
Example #7
0
        public async Task CreateBudgetAccount_WhenBudgetAccountViewModelIsValid_AssertPublishAsyncWasCalledOnCommandBusWithCreateBudgetAccountCommandContainingBudgetAccountGroupNumberFromBudgetAccountViewModel()
        {
            Controller sut = CreateSut();

            int budgetAccountGroupNumber = _fixture.Create <int>();
            BudgetAccountGroupViewModel budgetAccountGroupViewModel = CreateBudgetAccountGroupViewModel(budgetAccountGroupNumber);
            BudgetAccountViewModel      budgetAccountViewModel      = CreateBudgetAccountViewModel(budgetAccountGroupViewModel: budgetAccountGroupViewModel);

            await sut.CreateBudgetAccount(budgetAccountViewModel);

            _commandBusMock.Verify(m => m.PublishAsync(It.Is <ICreateBudgetAccountCommand>(command => command != null && command.BudgetAccountGroupNumber == budgetAccountGroupNumber)), Times.Once);
        }
Example #8
0
        public async Task CreateBudgetAccountGroup_WhenCalledWithInvalidModel_ReturnsViewResultWhereModelIsEqualToInvalidModel()
        {
            Controller sut = CreateSut(false);

            BudgetAccountGroupViewModel model = CreateModel();
            ViewResult result = (ViewResult)await sut.CreateBudgetAccountGroup(model);

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

            BudgetAccountGroupViewModel budgetAccountGroupViewModel = (BudgetAccountGroupViewModel)result.Model;

            Assert.That(budgetAccountGroupViewModel, Is.EqualTo(model));
        }
Example #9
0
        public void CreateBudgetAccountGroup_WhenCalledWithoutModel_ReturnsViewResultWhereModelIsBudgetAccountGroupViewModel()
        {
            Controller sut = CreateSut();

            ViewResult result = (ViewResult)sut.CreateBudgetAccountGroup();

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

            BudgetAccountGroupViewModel budgetAccountGroupViewModel = (BudgetAccountGroupViewModel)result.Model;

            Assert.That(budgetAccountGroupViewModel, Is.Not.Null);
            Assert.That(budgetAccountGroupViewModel.Number, Is.EqualTo(default(int)));
            Assert.That(budgetAccountGroupViewModel.Name, Is.Null);
            Assert.That(budgetAccountGroupViewModel.EditMode, Is.EqualTo(EditMode.Create));
        }
        public async Task UpdateBudgetAccountGroup_WhenCalledWithNumber_ReturnsViewResultWhereModelIsBudgetAccountGroupViewModel()
        {
            int    number = _fixture.Create <int>();
            string name   = _fixture.Create <string>();
            IBudgetAccountGroup budgetAccountGroup = _fixture.BuildBudgetAccountGroupMock(number, name).Object;
            Controller          sut = CreateSut(budgetAccountGroup);

            ViewResult result = (ViewResult)await sut.UpdateBudgetAccountGroup(_fixture.Create <int>());

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

            BudgetAccountGroupViewModel budgetAccountGroupViewModel = (BudgetAccountGroupViewModel)result.Model;

            Assert.That(budgetAccountGroupViewModel, Is.Not.Null);
            Assert.That(budgetAccountGroupViewModel.Number, Is.EqualTo(number));
            Assert.That(budgetAccountGroupViewModel.Name, Is.EqualTo(name));
            Assert.That(budgetAccountGroupViewModel.EditMode, Is.EqualTo(EditMode.Edit));
        }
Example #11
0
 private BudgetAccountViewModel CreateBudgetAccountViewModel(AccountingIdentificationViewModel accountingIdentificationViewModel = null, string accountNumber = null, string accountName = null, bool hasDescription = true, string description = null, bool hasNote = true, string note = null, BudgetAccountGroupViewModel budgetAccountGroupViewModel = null, BudgetInfoDictionaryViewModel budgetInfoDictionaryViewModel = null)
 {
     return(_fixture.Build <BudgetAccountViewModel>()
            .With(m => m.Accounting, accountingIdentificationViewModel ?? CreateAccountingIdentificationViewModel())
            .With(m => m.AccountNumber, accountNumber ?? _fixture.Create <string>())
            .With(m => m.AccountName, accountName ?? _fixture.Create <string>())
            .With(m => m.Description, hasDescription ? description ?? _fixture.Create <string>() : null)
            .With(m => m.Note, hasNote ? note ?? _fixture.Create <string>() : null)
            .With(m => m.BudgetAccountGroup, budgetAccountGroupViewModel ?? CreateBudgetAccountGroupViewModel())
            .With(m => m.BudgetInfos, budgetInfoDictionaryViewModel ?? CreateBudgetInfoDictionaryViewModel())
            .Create());
 }