public static Mock<HttpRequestData> HttpRequestDataMock(string data, HttpStatusCode httpStatusCode = HttpStatusCode.OK){ Mock<FunctionContext> functionContextMock = new(); HttpHeadersCollection headers = new() { { "Authorization", new List<string?> { "Bearer token" } } }; headers.Add("content-type", "application/json"); Mock<HttpRequestData> httpRequestDataMock = new(functionContextMock.Object); httpRequestDataMock.Setup(r => r.Headers).Returns(headers); httpRequestDataMock.Setup(r => r.Body).Returns(data.CreateMemoryStream()); httpRequestDataMock.Setup(r => r.CreateResponse()).Returns(() => { Mock<HttpResponseData> httpResponseData = new(functionContextMock.Object); httpResponseData.SetupProperty(s => s.Headers, headers); httpResponseData.SetupProperty(s => httpStatusCode); httpResponseData.SetupProperty(s => s.Body, new MemoryStream()); return httpResponseData.Object; }); return httpRequestDataMock;}
Mock<HttpRequestData> request = HttpRequestDataMock(validPayload);using StreamReader reader = new(request.Object.Body, encoding: System.Text.Encoding.UTF8, leaveOpen: true);string bodyResult = await reader.ReadToEndAsync();
using StreamReader reader = new(request.Object.Body, encoding: System.Text.Encoding.UTF8, leaveOpen: true);string bodyResult = await reader.ReadToEndAsync();
string result = await reader.ReadToEndAsync()