public async Task FindUser_ReturnsNull_WhenUserDoesNotExist() { var logger = new Mock <ILogger>().Object; var settings = LdapTestHelper.GetLdapSettings(); var ldapConnectionProvider = new LdapConnectionProvider(settings, logger); var ldapProviderService = new LdapProviderService(ldapConnectionProvider, logger, new PolicyProvider()); var externalUser = await ldapProviderService.FindUserBySubjectId($"EXAMPLE\\nonexistent.user"); Assert.Null(externalUser); }
public async Task FindUser_Succeeds_WhenUserExists() { var logger = new Mock <ILogger>().Object; var settings = LdapTestHelper.GetLdapSettings(); var ldapConnectionProvider = new LdapConnectionProvider(settings, logger); var newUser = LdapTestHelper.CreateTestUser("test", "user", settings.BaseDn, ldapConnectionProvider); var ldapProviderService = new LdapProviderService(ldapConnectionProvider, logger, new PolicyProvider()); var externalUser = await ldapProviderService.FindUserBySubjectId($"EXAMPLE\\{newUser.getAttribute("cn").StringValue}"); LdapTestHelper.RemoveEntry(newUser, ldapConnectionProvider); Assert.NotNull(externalUser); Assert.Equal("test", externalUser.FirstName); Assert.Equal("user", externalUser.LastName); Assert.Equal(@"EXAMPLE\test.user", externalUser.SubjectId); Assert.Equal("", externalUser.MiddleName); }
public async Task FindUser_ReturnsNull_WithNoConnectionInfo() { var logger = new Mock <ILogger>().Object; var settings = new LdapSettings { Server = "", Port = 389, Username = @"", Password = "", UseSsl = false }; var ldapConnectionProvider = new LdapConnectionProvider(settings, logger); var ldapProviderService = new LdapProviderService(ldapConnectionProvider, logger, new PolicyProvider()); var externalUser = await ldapProviderService.FindUserBySubjectId($"EXAMPLE\\nonexistent.user"); Assert.Null(externalUser); }
public void SearchUsers_Succeeds(string searchText, int count) { var logger = new Mock <ILogger>().Object; var settings = LdapTestHelper.GetLdapSettings(); var testUsers = new List <Tuple <string, string> > { Tuple.Create("mike", "trout"), Tuple.Create("mike", "piazza"), Tuple.Create("mike", "stanton"), Tuple.Create("carlos", "beltran") }; var ldapConnectionProvider = new LdapConnectionProvider(settings, logger); var ldapEntries = LdapTestHelper.CreateTestUsers(testUsers, settings.BaseDn, ldapConnectionProvider); var ldapProviderService = new LdapProviderService(ldapConnectionProvider, logger, new PolicyProvider()); var searchResults = ldapProviderService.SearchUsers(searchText); LdapTestHelper.RemoveEntries(ldapEntries, ldapConnectionProvider); Assert.NotNull(searchResults); Assert.Equal(count, searchResults.Count); }