コード例 #1
0
        public void RegisterShould_CallProviderRegisterAndLoginUserCorrectly_WhenModelStateIsValid(string email,
                                                                                                   string username, string password, string firstName, string lastName, string phoneNumber)
        {
            var authProviderMock = new Mock <IAuthenticationProvider>();
            var userServiceMock  = new Mock <IUserService>();

            var controller = new Web.Controllers.AccountController(authProviderMock.Object, userServiceMock.Object);

            authProviderMock.Setup(
                p =>
                p.RegisterAndLoginUser(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <bool>(),
                                       It.IsAny <bool>()))
            .Returns(IdentityResult.Success);

            var user = new User();

            userServiceMock.Setup(f => f.CreateUser(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()))
            .Returns(user);

            var model = new RegisterViewModel
            {
                Email    = email,
                Username = username,
                Password = password
            };

            controller.Register(model);

            authProviderMock.Verify(p => p.RegisterAndLoginUser(user, password, It.IsAny <bool>(), It.IsAny <bool>()));
        }