private async Task <bool> CreateNewDigitalIdentity(DigitalIdentity digitalidentity) { var di = new { givenName = digitalidentity.FirstName, lastName = digitalidentity.LastName, email = digitalidentity.EmailAddress, CustomerId = digitalidentity.CustomerGuid }; var jsonobj = JsonConvert.SerializeObject(di); return(await _digitalidentityClient.Post(digitalidentity.CustomerGuid?.ToString(), digitalidentity.IdentityStoreId?.ToString(), jsonobj, "SignUpInvitation")); }
private async Task <bool> UpdateUser(DigitalIdentity digitalidentity) { var di = new { ObjectId = digitalidentity.IdentityStoreId, FirstName = digitalidentity.FirstName, LastName = digitalidentity.LastName }; var jsonobj = JsonConvert.SerializeObject(di); return(await _digitalidentityClient.Put(digitalidentity.CustomerGuid?.ToString(), digitalidentity.IdentityStoreId?.ToString(), jsonobj, "UpdateUser")); }
private async Task <bool> ChangeEmail(DigitalIdentity digitalidentity) { var di = new { ObjectID = digitalidentity.IdentityStoreId, digitalidentity.NewEmail, digitalidentity.CurrentEmail }; var jsonobj = JsonConvert.SerializeObject(di); return(await _digitalidentityClient.Post(digitalidentity.CustomerGuid?.ToString(), digitalidentity.IdentityStoreId?.ToString(), jsonobj, "ChangeEmail")); }
public async Task Post_SignUpInvitation_SucceedsAndReturnsSuccessfullyActioned() { // Arrange var identity = new DigitalIdentity() { CreateDigitalIdentity = true }; DigitalIdentityClient.Setup(x => x.Post(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(true)); var msg = new Message(System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(identity))); // Act var response = await SendMessage(msg); // Assert Assert.AreEqual(DigitalIdentityServiceActions.SuccessfullyActioned, response); }
public async Task Post_ChangeEmail_FailsAndDeadLettersMessage() { // Arrange var identity = new DigitalIdentity() { ChangeEmailAddress = true }; DigitalIdentityClient.Setup(x => x.Post(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(false)); var msg = new Message(System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(identity))); // Act var response = await SendMessage(msg); // Assert Assert.AreEqual(DigitalIdentityServiceActions.DeadLettered, response); }
public async Task Post_SignUpInvitation_FailsAndDeadLettersMessage() { // Arrange var identity = new DigitalIdentity() { CreateDigitalIdentity = true }; DigitalIdentityClient.Setup(x => x.Post(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(false)); RequeueService.Setup(x => x.RequeueItem(It.IsAny <string>(), It.IsAny <int>(), It.IsAny <Message>())).Returns(Task.FromResult(false)); var msg = new Message(System.Text.Encoding.Default.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(identity))); // Act var response = await SendMessage(msg); // Assert Assert.AreEqual(DigitalIdentityServiceActions.DeadLettered, response); }
public void Generic_UnableToDetermineActionRequired_ThrowsException() { // Arrange var identity = new DigitalIdentity() { }; DigitalIdentityClient.Setup(x => x.Post(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(false)); RequeueService.Setup(x => x.RequeueItem(It.IsAny <string>(), It.IsAny <int>(), It.IsAny <Message>())).Returns(Task.FromResult(false)); var msg = new Message(System.Text.Encoding.Default.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(identity))); // Act var ex = Assert.ThrowsAsync <Exception>(() => SendMessage(msg)); // Assert Assert.That(ex.Message, Is.EqualTo("Unable to determine if digital identity needs to be updated/created/deleted for customer: ")); }
private async Task <bool> DeleteDigitalIdentity(DigitalIdentity digitalidentity) { return(await _digitalidentityClient.Delete(digitalidentity.CustomerGuid?.ToString(), digitalidentity.IdentityStoreId?.ToString(), "", $"DeleteUser?id={digitalidentity.IdentityStoreId}")); }