Esempio n. 1
0
 public UsersController(WebApiContext context, IMapper mapper, AdminElevation adminElevation,
                        SignupThrottler signupThrottler, PasswordHasher passwordHasher)
 {
     _context         = context;
     _mapper          = mapper;
     _adminElevation  = adminElevation;
     _signupThrottler = signupThrottler;
     _passwordHasher  = passwordHasher;
 }
Esempio n. 2
0
        private UsersController CreateController(WebApiContext context)
        {
            var adminElevation  = new AdminElevation(context);
            var signupThrottler = new SignupThrottler(context, TimeSpan.FromMinutes(10));
            var hasher          = new PasswordHasher();
            var controller      = new UsersController(context, _mapper, adminElevation, signupThrottler, hasher);

            return(controller);
        }
Esempio n. 3
0
        public async Task AddUserWithSameLoginAfterTimeout()
        {
            await using var context = new WebApiContext(_seeder.DbContextOptions);

            var signupThrottler = new SignupThrottler(context, TimeSpan.FromHours(1));

            var existingUser = await context.Users.FirstAsync();

            existingUser.CreatedDate = DateTime.Now - TimeSpan.FromHours(2);
            await context.SaveChangesAsync();

            (await signupThrottler.IsSignupAllowed(existingUser.Login)).ShouldBe(true);
        }