We've mocked the HttpMessageHandler, so we can test a class that uses the HttpClient. 
One of our methods under test creates a new HttpClient, calls PostAsync, and disposes the HttpClient. We would like to test the Content of the HTTP request like this: 
Assert.Equal("", ActualHttpRequestMessage.Content.ReadAsStringAsync());
The problem is that we "Cannot access a disposed object," because the HttpClient disposes the Content. 
Question How can we inspect the content?
This is our Moq setup.
MockHttpMessageHandler = new Mock<HttpMessageHandler>();
MockHttpMessageHandler
    .Protected()
    .Setup<Task<HttpResponseMessage>>(
        "SendAsync",
        ItExpr.IsAny<HttpRequestMessage>(),
        ItExpr.IsAny<CancellationToken>())
    .Callback<HttpRequestMessage, CancellationToken>(
        (httpRequestMessage, cancellationToken) =>
        {
            ActualHttpRequestMessage = httpRequestMessage;
        })
    .Returns(
        Task.FromResult(new HttpResponseMessage(HttpStatusCode.OK)
        {
            Content = new StringContent(string.Empty)
        }));
This is how we are using it in the class under test.
new HttpClient(HttpMessageHandler);