public IntegrationTests() { // Configure subscriber _subscriberStreamStore = new InMemoryStreamStore(); var subscriberSettings = new WebHookSubscriberSettings(_subscriberStreamStore); var subscriberWebHostBuilder = new WebHostBuilder() .UseStartup <WebHookSubscriberStartup>() .ConfigureServices(services => services.AddSingleton(subscriberSettings)); var subscriberTestServer = new TestServer(subscriberWebHostBuilder); _subscriberClient = new HttpClient(subscriberTestServer.CreateHandler()) { BaseAddress = new Uri("http://subscriber.example.com") }; // Configure publisher _publisherStreamStore = new InMemoryStreamStore(); var publisherSettings = new WebHookPublisherSettings(_publisherStreamStore) { HttpMessageHandler = subscriberTestServer.CreateHandler() }; _webHookPublisher = new WebHookPublisher(publisherSettings); var publisherWebHostBuilder = new WebHostBuilder() .UseStartup <WebHookPublisherStartup>() .ConfigureServices(services => services.AddSingleton(publisherSettings)); var publisherTestServer = new TestServer(publisherWebHostBuilder); _publisherClient = new HttpClient(publisherTestServer.CreateHandler()) { BaseAddress = new Uri("http://publisher.example.com") }; }
public PublisherTests() { // Setup subscriber _subscriberStreamStore = new InMemoryStreamStore(() => _utcNow); _subscriberSettings = new WebHookSubscriberSettings(_subscriberStreamStore); var subscriberWebHostBuilder = new WebHostBuilder() .UseStartup <WebHookSubscriberStartup>() .ConfigureServices(services => services.AddSingleton(_subscriberSettings)); var subscriberTestServer = new TestServer(subscriberWebHostBuilder); _subscriberClient = new HttpClient(subscriberTestServer.CreateHandler()) { BaseAddress = new Uri("http://subscriber.example.com") }; // Setup publisher _publisherStreamStore = new InMemoryStreamStore(() => _utcNow); var publisherSettings = new WebHookPublisherSettings(_publisherStreamStore) { HttpMessageHandler = subscriberTestServer.CreateHandler(), GetUtcNow = () => _utcNow }; _publisher = new WebHookPublisher(publisherSettings); var publisherWebHostBuilder = new WebHostBuilder() .UseStartup <WebHookPublisherStartup>() .ConfigureServices(services => services.AddSingleton(publisherSettings)); var publisherTestServer = new TestServer(publisherWebHostBuilder); _publisherClient = new HttpClient(publisherTestServer.CreateHandler()) { BaseAddress = new Uri("http://publisher.example.com") }; _publisherClient.DefaultRequestHeaders.Accept.Add( MediaTypeWithQualityHeaderValue.Parse("application/json")); }