public Services(IConfigSource config, string configName, WebApp webApp) { m_log.Debug("[Wifi]: Services Starting..."); m_WebApp = webApp; m_ServerAdminPassword = webApp.RemoteAdminPassword; //m_log.DebugFormat("[Services]: RemoteAdminPassword is {0}", m_ServerAdminPassword); m_LastStatisticsUpdate = new DateTime(); // Create the necessary services m_UserAccountService = new UserAccountService(config); m_AuthenticationService = new PasswordAuthenticationService(config); m_InventoryService = new InventoryService(config); m_GridService = new GridService(config); m_GridUserService = new GridUserService(config); m_AvatarService = new AvatarService(config); // Create the "God" account if it doesn't exist CreateGod(); // Connect to our outgoing mail server for password forgetfulness m_Client = new SmtpClient(m_WebApp.SmtpHost, m_WebApp.SmtpPort); if (m_WebApp.SmtpPort == 25) { m_Client.EnableSsl = false; } else { m_Client.EnableSsl = true; } m_Client.Credentials = new NetworkCredential(m_WebApp.SmtpUsername, m_WebApp.SmtpPassword); m_Client.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback); }
public void DetermineResult_gets_result_when_no_result_set(PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange request.Result = null; // Act sut.DetermineResult(ref request); // Assert Assert.NotNull(request.Result); }
public void PerformVerification_gets_false_result_when_no_verifier_present(PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange request.Verifier = null; // Act sut.PerformVerification(ref request); // Assert Assert.IsFalse(request.PasswordVerified, "Password verified"); }
public void DetermineResult_creates_success_result_when_password_is_verified(PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange request.Result = null; request.PasswordVerified = true; // Act sut.DetermineResult(ref request); // Assert Assert.IsTrue(request.Result.Success); }
public void DetermineResult_does_not_change_result_when_already_set(PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request, AuthenticationResult result) { // Arrange request.Result = result; // Act sut.DetermineResult(ref request); // Assert Assert.AreSame(result, request.Result); }
public void CreateRequest_uses_request_factory([Frozen] IRequestFactory <StubAuthenticationRequest> requestFactory, PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange Mock.Get(requestFactory) .Setup(x => x.CreateRequest(request.EnteredCredentials)) .Returns(request); // Act var result = sut.CreateRequest(request.EnteredCredentials); // Assert Assert.AreSame(request, result, "Correct instance returned"); Mock.Get(requestFactory).Verify(x => x.CreateRequest(request.EnteredCredentials), Times.Once()); }
public void PerformVerification_gets_false_result_when_verification_fails(PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange Mock.Get(request.Verifier) .Setup(x => x.Verify(request.EnteredCredentials, request.CredentialsObject)) .Returns(false); // Act sut.PerformVerification(ref request); // Assert Mock.Get(request.Verifier) .Verify(x => x.Verify(request.EnteredCredentials, request.CredentialsObject), Times.Once()); Assert.IsFalse(request.PasswordVerified, "Password not verified"); }
public Services(IConfigSource config, string configName, WebApp webApp) { m_log.Debug("[Wifi]: Services Starting..."); m_WebApp = webApp; m_ServerAdminPassword = webApp.RemoteAdminPassword; //m_log.DebugFormat("[Services]: RemoteAdminPassword is {0}", m_ServerAdminPassword); m_LastStatisticsUpdate = new DateTime(); // Create the necessary services m_UserAccountService = new UserAccountService(config); m_AuthenticationService = new PasswordAuthenticationService(config); m_InventoryService = new InventoryService(config); m_AssetService = new AssetService(config); m_GridService = new GridService(config); m_GridUserService = new GridUserService(config); m_AvatarService = new AvatarService(config); m_PresenceService = new PresenceService(config); m_GroupsService = new GroupsService(config); // Create the "God" account if it doesn't exist CreateGod(); if (m_WebApp.BypassCertificateVerification) { ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return(true); } } ; // Connect to our outgoing mail server for password forgetfulness m_Client = new SmtpClient(m_WebApp.SmtpHost, m_WebApp.SmtpPort); if (m_WebApp.SmtpPort == 25) { m_Client.EnableSsl = false; } else { m_Client.EnableSsl = true; } m_Client.Credentials = new NetworkCredential(m_WebApp.SmtpUsername, m_WebApp.SmtpPassword); m_Client.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback); }
public void RetrieveVerifier_uses_factory([Frozen] IPasswordVerifierFactory factory, PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request, IPasswordVerifier verifier) { // Arrange Mock.Get(factory) .Setup(x => x.GetVerifier(request.CredentialsObject)) .Returns(verifier); // Act sut.RetrieveVerifier(ref request); // Assert Assert.AreSame(verifier, request.Verifier, "Verifier is set"); Mock.Get(factory) .Verify(x => x.GetVerifier(request.CredentialsObject), Times.Once()); }
IPasswordAuthenticationService GetAuthenticationService(IStoredCredentialsRepository repo) { var output = new PasswordAuthenticationService <AuthenticationRequest>(repo); if (useSuccessListener) { output.SuccessfulAuthentication += (sender, e) => { listenerTriggered = true; }; } else if (useFailureListener) { output.FailedAuthentication += (sender, e) => { listenerTriggered = true; }; } return(output); }
public void RetrieveStoredCredentials_uses_repository([Frozen] IStoredCredentialsRepository repository, PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request, StubStoredCredentials stored) { // Arrange Mock.Get(repository) .Setup(x => x.GetStoredCredentials(request.EnteredCredentials)) .Returns(stored); request.EnteredCredentials = request.EnteredCredentials; // Act sut.RetrieveStoredCredentials(ref request); // Assert Assert.AreSame(stored, request.StoredCredentials, "Stored credentials are set"); Mock.Get(repository) .Verify(x => x.GetStoredCredentials(request.EnteredCredentials), Times.Once()); }
public void RetrieveStoredCredentials_sets_result_when_credentials_are_not_found([Frozen] IStoredCredentialsRepository repository, PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange Mock.Get(repository) .Setup(x => x.GetStoredCredentials(request.EnteredCredentials)) .Returns((StubStoredCredentials)null); request.EnteredCredentials = request.EnteredCredentials; request.Result = null; // Act sut.RetrieveStoredCredentials(ref request); // Assert Assert.IsNull(request.StoredCredentials, "Stored credentials are null"); Assert.NotNull(request.Result, "Result is set"); Assert.IsFalse(request.Result.CredentialsFound, "Credentials not found"); }
public void RetrieveVerifier_sets_failure_result_when_verifier_cannot_be_created([Frozen] IPasswordVerifierFactory factory, PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange Mock.Get(factory) .Setup(x => x.GetVerifier(request.CredentialsObject)) .Returns((IPasswordVerifier)null); request.Result = null; // Act sut.RetrieveVerifier(ref request); // Assert Mock.Get(factory) .Verify(x => x.GetVerifier(request.CredentialsObject), Times.Once()); Assert.NotNull(request.Result, "Result has been set"); Assert.IsFalse(request.Result.Success, "Result indicates failure"); }
public void RetrieveVerifier_does_not_use_factory_when_credentials_object_is_empty([Frozen] IPasswordVerifierFactory factory, PasswordAuthenticationService <StubAuthenticationRequest> sut, StubAuthenticationRequest request) { // Arrange Mock.Get(factory) .Setup(x => x.GetVerifier(It.IsAny <object>())) .Returns((IPasswordVerifier)null); request.CredentialsObject = null; // Act sut.RetrieveVerifier(ref request); // Assert Mock.Get(factory) .Verify(x => x.GetVerifier(It.IsAny <object>()), Times.Never()); }