public async Task CreateAsync_HasRight() { using (var env = new TestEnvironment()) { env.SetUser("user01", SystemRoles.User); var resource = new TestProjectDataResource { Id = "testnew", Str = "new", ProjectRef = "project01", OwnerRef = "user01" }; TestProjectDataResource newResource = await env.Service.CreateAsync(resource); Assert.That(newResource, Is.Not.Null); } }
public void CreateAsync_ProjectNotSet() { using (var env = new TestEnvironment()) { env.SetUser("user01", SystemRoles.User); var resource = new TestProjectDataResource { Id = "testnew", Str = "new", OwnerRef = "user01" }; var ex = Assert.ThrowsAsync <JsonApiException>(async() => { await env.Service.CreateAsync(resource); }); Assert.That(ex.GetStatusCode(), Is.EqualTo(StatusCodes.Status400BadRequest)); } }
public async Task UpdateAsync_HasOwnRight() { using (var env = new TestEnvironment()) { env.SetUser("user01", SystemRoles.User); env.JsonApiContext.AttributesToUpdate.Returns(new Dictionary <AttrAttribute, object> { { env.GetAttribute("str"), "new" } }); env.JsonApiContext.RelationshipsToUpdate.Returns(new Dictionary <RelationshipAttribute, object>()); var resource = new TestProjectDataResource { Id = "test03", Str = "new" }; TestProjectDataResource updatedResource = await env.Service.UpdateAsync(resource.Id, resource); Assert.That(updatedResource, Is.Not.Null); Assert.That(updatedResource.Str, Is.EqualTo("new")); } }
public void UpdateAsync_NoRight() { using (var env = new TestEnvironment()) { env.SetUser("user02", SystemRoles.User); env.JsonApiContext.AttributesToUpdate.Returns(new Dictionary <AttrAttribute, object> { { env.GetAttribute("str"), "new" } }); env.JsonApiContext.RelationshipsToUpdate.Returns(new Dictionary <RelationshipAttribute, object>()); var resource = new TestProjectDataResource { Id = "test01", Str = "new" }; var ex = Assert.ThrowsAsync <JsonApiException>(async() => { await env.Service.UpdateAsync(resource.Id, resource); }); Assert.That(ex.GetStatusCode(), Is.EqualTo(StatusCodes.Status403Forbidden)); } }