public void CanRead_ReturnsFalse_NonJsonPatchContentType(Type modelType) { // Arrange var formatter = new JsonPatchInputFormatter(); var content = "[{\"op\": \"add\", \"path\" : \"Customer/Name\", \"value\":\"John\"}]"; var contentBytes = Encoding.UTF8.GetBytes(content); var actionContext = GetActionContext(contentBytes, contentType: "application/json-patch+json"); var formatterContext = new InputFormatterContext(actionContext, modelType); // Act var result = formatter.CanRead(formatterContext); // Assert Assert.False(result); }
public void CanRead_ReturnsTrueOnlyForJsonPatchContentType(string requestContentType, bool expectedCanRead) { // Arrange var formatter = new JsonPatchInputFormatter(); var content = "[{\"op\": \"add\", \"path\" : \"Customer/Name\", \"value\":\"John\"}]"; var contentBytes = Encoding.UTF8.GetBytes(content); var actionContext = GetActionContext(contentBytes, contentType: requestContentType); var formatterContext = new InputFormatterContext(actionContext, typeof(JsonPatchDocument<Customer>)); // Act var result = formatter.CanRead(formatterContext); // Assert Assert.Equal(expectedCanRead, result); }
public void CanRead_ReturnsTrueOnlyForJsonPatchContentType(string requestContentType, bool expectedCanRead) { // Arrange var formatter = new JsonPatchInputFormatter(); var content = "[{\"op\": \"add\", \"path\" : \"Customer/Name\", \"value\":\"John\"}]"; var contentBytes = Encoding.UTF8.GetBytes(content); var actionContext = GetActionContext(contentBytes, contentType: requestContentType); var formatterContext = new InputFormatterContext(actionContext, typeof(JsonPatchDocument <Customer>)); // Act var result = formatter.CanRead(formatterContext); // Assert Assert.Equal(expectedCanRead, result); }
public void CanRead_ReturnsFalse_NonJsonPatchContentType(Type modelType) { // Arrange var formatter = new JsonPatchInputFormatter(); var content = "[{\"op\": \"add\", \"path\" : \"Customer/Name\", \"value\":\"John\"}]"; var contentBytes = Encoding.UTF8.GetBytes(content); var modelState = new ModelStateDictionary(); var httpContext = GetHttpContext(contentBytes, contentType: "application/json-patch+json"); var formatterContext = new InputFormatterContext(httpContext, modelState, modelType); // Act var result = formatter.CanRead(formatterContext); // Assert Assert.False(result); }