public void RemoveUserClaim_WithInvalidClaim_ShouldThrowNotFoundRpcException() { // Arrange var users = TestData.FileStorage.GetUsers(); var user = users.First(); var host = TestHost.WithClaimsFromBearerAuthentication(new Claim(JwtClaimTypes.Subject, user.Id.ToString())); host.Server.CleanupDbContext(); var request = new RemoveUserClaimRequest { UserId = user.Id.ToString(), Claim = new UserClaimDto { Type = CustomClaimTypes.StripeCustomer, Value = "customerId" } }; var client = new IdentityService.IdentityServiceClient(host.CreateChannel()); // Act var func = new Func <Task>(async() => await client.RemoveUserClaimAsync(request)); // Assert func.Should().Throw <RpcException>(); }
public async Task RemoveUserClaim_ShouldBeOfTypeRemoveUserClaimResponse() { // Arrange var users = TestData.FileStorage.GetUsers(); var user = users.First(); var host = TestHost.WithClaimsFromBearerAuthentication(new Claim(JwtClaimTypes.Subject, user.Id.ToString())); host.Server.CleanupDbContext(); await host.Server.UsingScopeAsync( async scope => { var userService = scope.GetRequiredService <IUserService>(); var result = await userService.CreateAsync(user, "Pass@word1"); result.Succeeded.Should().BeTrue(); await userService.AddClaimAsync(user, new Claim(CustomClaimTypes.StripeCustomer, "customerId")); }); var request = new RemoveUserClaimRequest { UserId = user.Id.ToString(), Claim = new UserClaimDto { Type = CustomClaimTypes.StripeCustomer, Value = "customerId" } }; var client = new IdentityService.IdentityServiceClient(host.CreateChannel()); // Act var reponse = await client.RemoveUserClaimAsync(request); // Assert reponse.Should().BeOfType <RemoveUserClaimResponse>(); }