예제 #1
0
        public async Task RegisteringTeacher_Then_SignInManagerCalled()
        {
            // Arrange
            var contract = new TeacherRegisterContract
            {
                Email        = "*****@*****.**",
                Password     = "******",
                FirstName    = "name",
                LastName     = "surname",
                DepartmentId = 1
            };
            var teacher = new Teacher
            {
                Email        = "*****@*****.**",
                UserName     = "******",
                FirstName    = "name",
                LastName     = "surname",
                DepartmentId = 1
            };

            _mapper.Map(contract).Returns(teacher);
            _userManager.CreateAsync(teacher, contract.Password).Returns(IdentityResult.Success);

            // Act
            await _usersApi.Register(contract);

            // Assert
            await _signInManager.SignInAsync(teacher, false);
        }
예제 #2
0
        public async Task Register(TeacherRegisterContract contract)
        {
            var user   = _mapper.Map(contract);
            var result = await _userManager.CreateAsync(user, contract.Password);

            if (result.Succeeded)
            {
                await _signInManager.SignInAsync(user, false);
            }
        }
 public Teacher Map(TeacherRegisterContract contract)
 {
     return(new()
     {
         FirstName = contract.FirstName,
         LastName = contract.LastName,
         Email = contract.Email,
         UserName = contract.Email,
         DepartmentId = contract.DepartmentId
     });
 }
예제 #4
0
        public void Then_StorageTeacherReturned()
        {
            // Arrange
            var contract = new TeacherRegisterContract()
            {
                Email        = "*****@*****.**",
                FirstName    = "name",
                LastName     = "surname",
                DepartmentId = 1
            };
            var modelMapper = new StorageUserModelMapper();

            // Act
            var result = modelMapper.Map(contract);

            // Assert
            result.LastName.Should().Be("surname");
            result.FirstName.Should().Be("name");
            result.Email.Should().Be("*****@*****.**");
            result.UserName.Should().Be("*****@*****.**");
            result.DepartmentId.Should().Be(1);
        }