public async Task Should_Create_Role() { var input = new CreateOrUpdateRoleInput { Role = new RoleDto { Name = "TestRoleName_" + Guid.NewGuid() }, GrantedPermissionIds = new List <Guid> { DefaultPermissions.MemberAccess.Id } }; var requestMessage = new HttpRequestMessage(HttpMethod.Post, "/api/roles"); requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _token); requestMessage.Content = input.ToStringContent(Encoding.UTF8, "application/json"); var responseAddRole = await TestServer.CreateClient().SendAsync(requestMessage); Assert.Equal(HttpStatusCode.Created, responseAddRole.StatusCode); var insertedRole = await DbContext.Roles.FirstAsync(r => r.Name == input.Role.Name); Assert.NotNull(insertedRole); }
public async Task Should_Update_Role() { var testRole = await CreateAndGetTestRoleAsync(); var input = new CreateOrUpdateRoleInput { Role = new RoleDto { Id = testRole.Id, Name = "TestRoleName_Edited_" + Guid.NewGuid() }, GrantedPermissionIds = new List <Guid> { DefaultPermissions.MemberAccess.Id } }; var requestMessage = new HttpRequestMessage(HttpMethod.Put, "/api/roles"); requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _token); requestMessage.Content = input.ToStringContent(Encoding.UTF8, "application/json"); var responseAddRole = await TestServer.CreateClient().SendAsync(requestMessage); Assert.Equal(HttpStatusCode.OK, responseAddRole.StatusCode); var dbContextFromAnotherScope = GetNewScopeServiceProvider().GetService <NucleusDbContext>(); var editedTestRole = await dbContextFromAnotherScope.Roles.FindAsync(testRole.Id); Assert.Contains(editedTestRole.RolePermissions, rp => rp.PermissionId == DefaultPermissions.MemberAccess.Id); }