public async Task SenderStopsOnDispose() { //arrange var config = new ServerConfig(new Uri("http://localhost"), Guid.NewGuid().ToString(), TimeSpan.Zero); var httpClient = Substitute.For <HttpClient>(); var agent = new QueuedAgent(config, httpClient); await agent.Send(new Request()); //act agent.Dispose(); //assert Assert.False(agent.IsRunning); }
public async Task RequestQueueIsClearedOnDispose() { var config = new ServerConfig(new Uri("http://localhost"), Guid.NewGuid().ToString(), TimeSpan.MaxValue); var http = new MockHttpMessageHandler(); var httpClient = new HttpClient(http); var agent = new QueuedAgent(config, httpClient); await agent.Send(new Request()); //act agent.Dispose(); //assert var leftover = agent.GetOutstandingRequests(); Assert.Empty(leftover); }