У меня есть метод, который делает два HTTP-вызова для двух разных URL-адресов, используя Flurl. Мне нужно провести модульное тестирование этого метода, в котором я хочу, чтобы Flurl отвечал двумя разными ответами. Как я могу настроить это?
Мой тестовый класс выглядит так:
public class SUT
{
public async Task Mut(object obj)
{
var x = await url1.PostJsonAsync(obj).ReceiveJson();
if ((bool)x.property = true)
{
var y = await url2.GetJsonAsync();
// Process y.
}
}
}
У меня есть тестовый класс, как показано ниже:
public class TestSut : Disposable
{
private readonly HttpTest httpTest;
public TestSut()
{
httpTest = new HttpTest();
}
[Fact]
public async Task TestMut()
{
// call Mut...
}
public void Dispose()
{
httpTest?.Dispose();
}
}
То, что я хотел бы, это что-то вроде строк:
httpTest.ForUrl(url1).ResponsdWithJson(...);
httpTest.ForUrl(url2).ResponsdWithJson(...);