public void CanWriteResult_ReturnsTrueForStringTypes( object value, bool useDeclaredTypeAsString, bool expectedCanWriteResult) { // Arrange var expectedContentType = expectedCanWriteResult ? MediaTypeHeaderValue.Parse("text/plain") : MediaTypeHeaderValue.Parse("application/json"); var formatter = new StringOutputFormatter(); var type = useDeclaredTypeAsString ? typeof(string) : typeof(object); var context = new OutputFormatterWriteContext( new DefaultHttpContext(), new TestHttpResponseStreamWriterFactory().CreateWriter, type, value); context.ContentType = MediaTypeHeaderValue.Parse("application/json"); // Act var result = formatter.CanWriteResult(context); // Assert Assert.Equal(expectedCanWriteResult, result); Assert.Equal(expectedContentType, context.ContentType); }
public void CanWriteResult_ReturnsTrueForStringTypes(object value, bool useDeclaredTypeAsString, bool expectedCanWriteResult) { // Arrange var formatter = new StringOutputFormatter(); var typeToUse = useDeclaredTypeAsString ? typeof(string) : typeof(object); var formatterContext = new OutputFormatterContext() { Object = value, DeclaredType = typeToUse }; // Act var result = formatter.CanWriteResult(formatterContext, null); // Assert Assert.Equal(expectedCanWriteResult, result); }