* Enable netfx testing. * Skip impacted tests and re-enable netfx testing. * Remove redundant comment. * Remove unnecessary project configuration. * Simplify test server copying.
22 lines
760 B
C#
22 lines
760 B
C#
using System.Net.Http;
|
|
|
|
namespace ModelContextProtocol.Tests.Utils;
|
|
|
|
public class MockHttpHandler : HttpMessageHandler
|
|
{
|
|
public Func<HttpRequestMessage, Task<HttpResponseMessage>>? RequestHandler { get; set; }
|
|
|
|
protected async override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
|
|
{
|
|
if (RequestHandler == null)
|
|
throw new InvalidOperationException($"No {nameof(RequestHandler)} was set! Please set handler first and make request afterwards.");
|
|
|
|
cancellationToken.ThrowIfCancellationRequested();
|
|
|
|
var result = await RequestHandler.Invoke(request);
|
|
|
|
cancellationToken.ThrowIfCancellationRequested();
|
|
|
|
return result;
|
|
}
|
|
}
|