Esempio n. 1
0
        public async void UserServiceRegisterUserTest()
        {
            // arrange
            var mockedResult = new MockIdentityResult().MockResultSuccession(true);

            var testPassword = _fixture.Create <string>();

            // create a registration model with same email as the test user
            var registrationModel = new RegisterResult
            {
                Result = mockedResult,
                User   = _testUser
            };

            _mockUserManager
            .Setup(x => x.CreateAsync(_testUser, testPassword))
            .Returns(Task.FromResult((IdentityResult)mockedResult));

            var usersList = new List <User> {
                _testUser
            };

            var mockUsers = usersList.AsQueryable().BuildMock();

            _mockUserManager.Setup(x => x.Users).Returns(mockUsers.Object);

            var userService =
                MockUserService.GetMockUserService(
                    signInManager: MockSignInManager.GetMockSignInManager(userManager: _mockUserManager.Object).Object,
                    userManager: _mockUserManager.Object,
                    roleManager: _mockRoleManager.Object
                    ).Object;

            // act
            var result = await userService.RegisterUser(_testUser, testPassword, _groupListNames);

            // assert
            registrationModel.ToExpectedObject().ShouldMatch(result);
        }