public TransactionsControllerFixture WithInfuraApiClientHandler(InfuraApiDelegatingHandler apiClientHandler) { _setup += services => services .AddHttpClient <IInfuraApiClient, InfuraApiApiClient>(client => client.BaseAddress = new Uri("http://localhost.test.svr")) .AddHttpMessageHandler(() => apiClientHandler); return(this); }
public async Task It_Search_For_A_Block_Transactions(string description, BlockSearchTheoryData theoryData) { InfuraApiDelegatingHandler apiClientSpy = new InfuraApiDelegatingHandler() .WithResponses(theoryData.BlockSearchResponses); TransactionsController sut = new TransactionsControllerFixture() .WithInfuraApiClientHandler(apiClientSpy) .CreateSut(); var result = await sut.Get(theoryData.BlockNumber, theoryData.Address); apiClientSpy.BlockNumberRequests.Should() .BeEquivalentTo(theoryData.ExpectedBlockNumberRequests, description); result.Value.Should().BeEquivalentTo(theoryData.ExpectedTransactions); }