public void Process_IfArgsIsNotNull_ShouldCallUserMapperMap()
        {
            // arrange
            var args = new LoginPipelineArgs();

            // act
            this.processor.Process(args);

            // assert
            this.userMapper.Received(1).Map <LoginPipelineArgs, User>(args);
        }
        public void Process_IfLoginReturnsTrue_ShouldSetFalseToIsInvalidCredentials()
        {
            // arrange
            var args = new LoginPipelineArgs();

            this.authenticationManager.Login(Arg.Any <string>(), Arg.Any <string>()).Returns(true);

            // act
            this.processor.Process(args);

            // assert
            Assert.False(args.IsInvalidCredentials);
        }
Esempio n. 3
0
        public void Process_IfArgsNotNull_ShouldCallCommerceTrackingServiceIdentifyAs()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                UserName = this.fixture.Create <string>()
            };

            // act
            this.processor.Process(args);

            // assert
            this.commerceTrackingService.Received(1).IdentifyAs(Constants.Login.CommerceUserSource, args.UserName);
        }
Esempio n. 4
0
        public void Process_IfCustomerProviderReturnsNull_ShouldAbortPipelineAndSetTrueToIsInvalidCredentials()
        {
            // arrange
            var args = new LoginPipelineArgs();

            this.customerProvider.GetUser(Arg.Any <string>()).Returns((User)null);

            // act
            this.processor.Process(args);

            // assert
            Assert.True(args.Aborted);
            Assert.True(args.IsInvalidCredentials);
        }
Esempio n. 5
0
        public void Process_IfArgsNotNull_ShouldCallCustomerProviderGetUser()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                Email = this.fixture.Create <string>()
            };

            // act
            this.processor.Process(args);

            // assert
            this.customerProvider.Received(1).GetUser(args.Email);
        }
Esempio n. 6
0
        public void Process_IfAnonymousContactIdIsNull_ShouldNotCallCrtServiceMergeCarts()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                AnonymousContactId = null
            };

            // act
            this.processor.Process(args);

            // assert
            this.cartService.DidNotReceive().MergeCarts(Arg.Any <string>());
        }
Esempio n. 7
0
        public void Process_IfAnonymousContactIdIsNotNull_ShouldCallCartServiceMergeCarts()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                AnonymousContactId = this.fixture.Create <string>()
            };

            // act
            this.processor.Process(args);

            // assert
            this.cartService.Received(1).MergeCarts(args.AnonymousContactId);
        }
        public void Process_IfMapperReturnsUSer_ShouldSetVisitorContextCurrentUser()
        {
            // arrange
            var args = new LoginPipelineArgs();
            var user = this.fixture.Create <User>();

            this.userMapper.Map <LoginPipelineArgs, User>(args).Returns(user);

            // act
            this.processor.Process(args);

            // assert
            this.visitorContext.Received(1).CurrentUser = user;
        }
        public void Process_IfArgsIsNotNull_ShouldSetAnonymousContactIdInArgs()
        {
            // arrange
            var args      = new LoginPipelineArgs();
            var contactId = this.fixture.Create <string>();

            this.visitorContext.ContactId.Returns(contactId);

            // act
            this.processor.Process(args);

            // assert
            Assert.Equal(contactId, args.AnonymousContactId);
        }
        public void Process_IfCustomerProviderReturnsUser_ShouldCallMapToLoginPipelineArgs()
        {
            // arrange
            var args = new LoginPipelineArgs();
            var user = new User();

            this.customerProvider.GetUser(Arg.Any <string>()).Returns(user);

            // act
            this.processor.Process(args);

            // assert
            this.userMapper.Received(1).MapToLoginPipelineArgs(user, args);
        }
        public void Process_IfArgsNotNull_ShouldCallAuthenticationManagerLogin()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                UserName = this.fixture.Create <string>(),
                Password = this.fixture.Create <string>()
            };

            // act
            this.processor.Process(args);

            // assert
            this.authenticationManager.Received(1).Login(args.UserName, args.Password);
        }
Esempio n. 12
0
        public Result <LoginResult> Login(string email, string password)
        {
            var args = new LoginPipelineArgs
            {
                Email    = email,
                Password = password
            };

            this.pipelineService.RunPipeline(Constants.Pipelines.Login, args);

            return(this.ResolveResult(
                       args,
                       pipelineArgs => new LoginResult
            {
                IsInvalidCredentials = pipelineArgs.IsInvalidCredentials
            }));
        }
Esempio n. 13
0
        public void Process_IfCustomerProviderReturnsValidUser_ShouldCallMapToLoginPipelineArgs()
        {
            // arrange
            var args = new LoginPipelineArgs();
            var user = new User();

            this.customerProvider.GetUser(Arg.Any <string>()).Returns(user);

            // act
            this.processor.Process(args);

            // assert
            if (System.Web.Security.Membership.ValidateUser(user?.UserName, args.Password))
            {
                this.userMapper.Received(1).MapToLoginPipelineArgs(user, args);
            }
        }
Esempio n. 14
0
        public void Process_IfCartServiceMergeCartWasSuccess_ShouldNotAbortPipeline()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                AnonymousContactId = this.fixture.Create <string>()
            };
            var successResult = this.fixture.Build <Result <Cart> >()
                                .With(result => result.Success, true)
                                .Create();

            this.cartService.MergeCarts(args.AnonymousContactId).Returns(successResult);

            // act
            this.processor.Process(args);

            // assert
            Assert.False(args.Aborted);
        }
Esempio n. 15
0
        public void Process_IfCartServiceMergeCartWasNotSuccess_ShouldAbortPipelineAndAddMessages()
        {
            // arrange
            var args = new LoginPipelineArgs
            {
                AnonymousContactId = this.fixture.Create <string>()
            };
            var failResult = this.fixture.Build <Result <Cart> >()
                             .With(result => result.Success, false)
                             .Create();

            this.cartService.MergeCarts(args.AnonymousContactId).Returns(failResult);

            // act
            this.processor.Process(args);

            // assert
            Assert.True(args.Aborted);
            Assert.Equal(
                failResult.Errors,
                args.GetMessages(PipelineMessageFilter.Warnings).Select(pipelineMessage => pipelineMessage.Text));
        }
Esempio n. 16
0
 public void MapToLoginPipelineArgs(User user, LoginPipelineArgs args)
 {
     this.InnerMapper.Map(user, args);
 }