public void ContentLength_ReadValue_TryComputeLengthInvoked()
{
_headers = new HttpContentHeaders(new ComputeLengthHttpContent(() => 15));
// The delegate is invoked to return the length.
Assert.Equal(15, _headers.ContentLength);
Assert.Equal((long)15, _headers.GetParsedValues(HttpKnownHeaderNames.ContentLength));
// After getting the calculated content length, set it to null.
_headers.ContentLength = null;
Assert.Equal(null, _headers.ContentLength);
Assert.False(_headers.Contains(HttpKnownHeaderNames.ContentLength));
_headers.ContentLength = 27;
Assert.Equal((long)27, _headers.ContentLength);
Assert.Equal((long)27, _headers.GetParsedValues(HttpKnownHeaderNames.ContentLength));
}