コード例 #1
0
        public void IndexPOST_GivenValidModelState_CommandDispatcherShouldBeCalled()
        {
            var command = new AddUpdateDisclaimerCommand();

            A.CallTo(() => _disclaimerViewModelBuilder.BuildAddDisclaimerCommand(A <DisclaimerViewModel> ._))
            .Returns(command);

            _controller.Index(A <DisclaimerViewModel> ._);

            A.CallTo(() => _commandDispatcher.Dispatch(command)).MustHaveHappened(Repeated.Exactly.Once);
        }
コード例 #2
0
        public void Execute_GivenAddUpdateDisclaimerCommandUpdate_DisclaimerShouldBeUpdatedInContext()
        {
            var disclaimerId = Guid.NewGuid();

            var command = new AddUpdateDisclaimerCommand()
            {
                DisclaimerId = disclaimerId,
                IsAgreed = true
            };

            var fakeContext = A.Fake<DbContext>();
            var set = new TestDbSet<Disclaimer>() { new Disclaimer(){ DisclaimerId = disclaimerId} };

            A.CallTo(() => fakeContext.Set<Disclaimer>()).Returns(set);
            A.CallTo(() => _unitOfWork.Context).Returns(fakeContext);

            _handler.Execute(command);

            set.Count(x => x.DisclaimerId == disclaimerId).Should().Be(1);

            var disclaimer = set.First(x => x.DisclaimerId == disclaimerId);
            disclaimer.IsAgreed.Should().BeTrue();
        }
コード例 #3
0
        public void Execute_GivenAddUpdateDisclaimerCommandAdd_DisclaimerShouldBeAddedToContext()
        {
            var disclaimerId = Guid.NewGuid();

            var command = new AddUpdateDisclaimerCommand()
            {
                DisclaimerId = disclaimerId,
                IsAgreed = true
            };

            var fakeContext = A.Fake<DbContext>();
            var set = new TestDbSet<Disclaimer>();

            A.CallTo(() => _userPrincipalProvider.CurrentUserName).Returns("user");
            A.CallTo(() => fakeContext.Set<Disclaimer>()).Returns(set);
            A.CallTo(() => _unitOfWork.Context).Returns(fakeContext);

            _handler.Execute(command);

            var disclaimer = set.First(x => x.DisclaimerId == disclaimerId);
            disclaimer.AssessorDomainName.Should().Be("user");
            disclaimer.IsAgreed.Should().BeTrue();
        }