public async Task NamingStrategy_DoesNotAffectSerialization_WithJsonObject(NamingStrategy strategy) { // Arrange var user = new UserWithJsonObject { age = 35, FullName = "John", }; var expected = "{\"age\":35,\"full_name\":\"John\"}"; var context = GetOutputFormatterContext(user, typeof(UserWithJsonProperty)); var settings = new JsonSerializerSettings { ContractResolver = new DefaultContractResolver { NamingStrategy = strategy, }, }; var formatter = new TestableJsonOutputFormatter(settings); // Act await formatter.WriteResponseBodyAsync(context, Encoding.UTF8); // Assert var body = context.HttpContext.Response.Body; Assert.NotNull(body); body.Position = 0; var content = new StreamReader(body, Encoding.UTF8).ReadToEnd(); Assert.Equal(expected, content); }