public void TestInitialize() { DapperTypeHandlerRegistration.Register(FifthweekAssembliesResolver.Assemblies); this.connectionFactory = new Mock <IFifthweekDbConnectionFactory>(MockBehavior.Strict); this.userManager = new Mock <IUserManager>(MockBehavior.Strict); var passwordHasher = new Mock <IPasswordHasher>(); this.userManager.Setup(v => v.PasswordHasher).Returns(passwordHasher.Object); passwordHasher.Setup(v => v.HashPassword(Password.Value)).Returns(PasswordHash); passwordHasher.Setup(v => v.VerifyHashedPassword(PasswordHash, Password.Value)).Returns(PasswordVerificationResult.Success); this.target = new GetUserAndRolesFromCredentialsDbStatement( this.userManager.Object, this.connectionFactory.Object); }
public async Task WhenCalledWithIncorrectUsername_ItShouldReturnNull() { await this.DatabaseTestAsync(async testDatabase => { this.target = new GetUserAndRolesFromCredentialsDbStatement( this.userManager.Object, testDatabase); await this.CreateUser(testDatabase); await testDatabase.TakeSnapshotAsync(); var result = await this.target.ExecuteAsync(new Username(Username + "Incorrect"), Password); Assert.IsNull(result); return(ExpectedSideEffects.None); }); }
public async Task WhenCalled_AndUserHasNoRoles_ItShouldReturnResult() { await this.DatabaseTestAsync(async testDatabase => { this.target = new GetUserAndRolesFromCredentialsDbStatement( this.userManager.Object, testDatabase); var userId = await this.CreateUser(testDatabase, false); await testDatabase.TakeSnapshotAsync(); var result = await this.target.ExecuteAsync(Username, Password); Assert.IsNotNull(result); Assert.AreEqual(userId, result.UserId); Assert.AreEqual(0, result.Roles.Count); return(ExpectedSideEffects.None); }); }