public void ShouldVerifySuccessfully() { var client = new Services.MeshyClient(Generator.RandomString(5), Generator.RandomString(36)); var authService = new Mock <IAuthenticationService>(); var passedUserVerificationCheck = default(UserVerificationCheck); authService.Setup(x => x.VerifyAsync(It.IsAny <UserVerificationCheck>())) .Callback <UserVerificationCheck>((sentUserVerificationCheck) => { passedUserVerificationCheck = sentUserVerificationCheck; }) .Returns(() => { return(Task.FromResult <object>(null)); }); client.AuthenticationService = authService.Object; var now = DateTimeOffset.Now; var userVerificationCheck = new UserVerificationCheck() { Expires = now, Hash = Generator.RandomString(5), Hint = Generator.RandomString(5), Username = Generator.RandomString(5), VerificationCode = Generator.RandomString(5) }; client.Verify(userVerificationCheck); Assert.Equal(userVerificationCheck.Hash, passedUserVerificationCheck.Hash); Assert.Equal(userVerificationCheck.Expires, passedUserVerificationCheck.Expires); Assert.Equal(userVerificationCheck.Hint, passedUserVerificationCheck.Hint); Assert.Equal(userVerificationCheck.Username, passedUserVerificationCheck.Username); Assert.Equal(userVerificationCheck.VerificationCode, passedUserVerificationCheck.VerificationCode); }
/// <summary> /// Check user hash to verify user request. /// </summary> /// <param name="userVerificationCheck">User verification check object to establish authorization.</param> /// <returns>Whether or not check was successful.</returns> public static Task <Valid> CheckHashAsync(UserVerificationCheck userVerificationCheck) { if (CurrentClient == null) { throw new InvalidOperationException("Client has not been established. Please initialize before continuing."); } return(CurrentClient.CheckHashAsync(userVerificationCheck)); }
/// <summary> /// Verify user to allow them to log in. /// </summary> /// <param name="userVerificationCheck">User verification check object to establish authorization.</param> public static void Verify(UserVerificationCheck userVerificationCheck) { if (CurrentClient == null) { throw new InvalidOperationException("Client has not been established. Please initialize before continuing."); } CurrentClient.Verify(userVerificationCheck); }
public void ShouldCheckHashSuccessfully() { var tokenService = new Mock <ITokenService>(); var requestService = new Mock <IRequestService>(); var passedPath = string.Empty; var passedModel = default(UserVerificationCheck); var passedFormat = RequestDataFormat.Json; requestService.Setup(x => x.PostRequest <Valid>(It.IsAny <string>(), It.IsAny <object>(), It.IsAny <RequestDataFormat>())) .Callback <string, object, RequestDataFormat>((path, model, format) => { passedPath = path; passedModel = model as UserVerificationCheck; passedFormat = format; }) .Returns(() => { return(Task.FromResult(It.IsAny <Valid>())); }); var service = new AuthenticationService(tokenService.Object, requestService.Object); var data = new UserVerificationCheck() { Expires = DateTimeOffset.Now, Hash = Generator.RandomString(5), Hint = Generator.RandomString(5), Username = Generator.RandomString(5), VerificationCode = Generator.RandomString(5) }; service.CheckHashAsync(data).ConfigureAwait(false).GetAwaiter().GetResult(); Assert.Equal("users/checkhash", passedPath); Assert.Equal(data.Username, passedModel.Username); Assert.Equal(data.Expires, passedModel.Expires); Assert.Equal(data.Hash, passedModel.Hash); Assert.Equal(data.Hint, passedModel.Hint); tokenService.VerifyAll(); requestService.VerifyAll(); }
public void ShouldCheckHashAsyncSuccessfully() { var client = new Services.MeshyClient(Generator.RandomString(5), Generator.RandomString(36)); var authService = new Mock <IAuthenticationService>(); var passedUserVerificationCheck = default(UserVerificationCheck); authService.Setup(x => x.CheckHashAsync(It.IsAny <UserVerificationCheck>())) .Callback <UserVerificationCheck>((sentUserVerificationCheck) => { passedUserVerificationCheck = sentUserVerificationCheck; }) .Returns(() => { return(Task.FromResult(new Valid { IsValid = true })); }); client.AuthenticationService = authService.Object; var now = DateTimeOffset.Now; var userVerificationCheck = new UserVerificationCheck() { Expires = now, Hash = Generator.RandomString(5), Hint = Generator.RandomString(5), Username = Generator.RandomString(5), VerificationCode = Generator.RandomString(5) }; var result = client.CheckHashAsync(userVerificationCheck).ConfigureAwait(false).GetAwaiter().GetResult(); Assert.True(result.IsValid); Assert.Equal(userVerificationCheck.Hash, passedUserVerificationCheck.Hash); Assert.Equal(userVerificationCheck.Expires, passedUserVerificationCheck.Expires); Assert.Equal(userVerificationCheck.Hint, passedUserVerificationCheck.Hint); Assert.Equal(userVerificationCheck.Username, passedUserVerificationCheck.Username); Assert.Equal(userVerificationCheck.VerificationCode, passedUserVerificationCheck.VerificationCode); }
/// <inheritdoc/> public Task <Valid> CheckHashAsync(UserVerificationCheck userVerificationCheck) { return(this.requestService.PostRequest <Valid>("users/checkhash", userVerificationCheck)); }
/// <inheritdoc/> public Task VerifyAsync(UserVerificationCheck userVerificationCheck) { return(this.requestService.PostRequest <object>("users/verify", userVerificationCheck)); }
/// <inheritdoc/> public Task <Valid> CheckHashAsync(UserVerificationCheck userVerificationCheck) { return(this.AuthenticationService.CheckHashAsync(userVerificationCheck)); }
/// <inheritdoc/> public Valid CheckHash(UserVerificationCheck userVerificationCheck) { var t = this.CheckHashAsync(userVerificationCheck).ConfigureAwait(false).GetAwaiter(); return(t.GetResult()); }
/// <inheritdoc/> public Task VerifyAsync(UserVerificationCheck userVerificationCheck) { return(this.AuthenticationService.VerifyAsync(userVerificationCheck)); }
/// <inheritdoc/> public void Verify(UserVerificationCheck userVerificationCheck) { var t = this.VerifyAsync(userVerificationCheck).ConfigureAwait(false).GetAwaiter(); t.GetResult(); }