Esempio n. 1
0
        public void Login()
        {
            var jwtSettings = new OptionsWrapper <JwtSettings>(new JwtSettings
            {
                Issuer = "http://localhost",
                Secret = "secret1245"
            });
            var jwtHelper      = new JwtHelper(jwtSettings);
            var optionsBuilder = new DbContextOptionsBuilder <TestRepositoryContext>();

            optionsBuilder.UseInMemoryDatabase("loginManagerTestDb");
            using var context = new TestRepositoryContext(optionsBuilder.Options);


            var login   = new LoginHelper(jwtHelper, context);
            var newUser = new DtoUserResponse()
            {
                Id    = 1,
                Name  = "UnitTest",
                Email = "*****@*****.**"
            };
            var newUser2 = new DtoUserSignIUp()
            {
                Name     = "UnitTest",
                Email    = "*****@*****.**",
                Password = "******"
            };
            var x = login.CreateAccount(newUser2);

            x.Token = null;
            Assert.Equal(x, login.Login("*****@*****.**", "unittest"));
        }
Esempio n. 2
0
        //for new user - SignIn
        public DtoUserResponse CreateAccount(DtoUserSignIUp customer)
        {
            var context = _context;
            var salt    = _jwtHelper.GenerateSalt();
            var newUser = new User()
            {
                Name     = customer.Name,
                Gender   = customer.Gender,
                BirthDay = customer.BirthDay,
                Salt     = salt,
                Password = _jwtHelper.HashPassword(customer.Password, salt),
                Email    = customer.Email

                           //TODO add other attributes
            };

            if (IsUserExist(newUser))
            {
                return(null);
            }

            context.Users.Add(newUser);
            context.SaveChanges();
            return(MapUserToDtoUserResponse(newUser));
        }
        public IActionResult SignUp(DtoUserSignIUp user)
        {
            var userDto = _loginHelper.CreateAccount(user);

            if (userDto != null)
            {
                return(Ok(userDto));
            }

            return(Conflict());
        }