示例#1
0
            public void ConnectionIsResetWhenTimeout_NotEqual()
            {
                var fixture = new EnterspeedConnectionTestFixture();

                var enterspeedConfiguration = new EnterspeedConfiguration()
                {
                    ApiKey            = "source-" + Guid.NewGuid(),
                    BaseUrl           = "https://example.com/",
                    ConnectionTimeout = 1
                };

                fixture.ConfigurationProvider
                .Configuration
                .Returns(enterspeedConfiguration);

                var sut = fixture.Create <EnterspeedConnection>();

                var oldHttpClient = sut.HttpClientConnection;

                // Wait until timeout is hit
                Thread.Sleep(1001);

                var newHttpClient = sut.HttpClientConnection;

                Assert.NotEqual(oldHttpClient, newHttpClient);
            }
示例#2
0
            public void MissingBaseUrl_Throws()
            {
                var fixture = new EnterspeedConnectionTestFixture();

                fixture.ConfigurationProvider
                .Configuration
                .Returns(new EnterspeedConfiguration()
                {
                    ApiKey = "source-" + Guid.NewGuid()
                });

                var sut = fixture.Create <EnterspeedConnection>();

                Assert.Throws <Exception>(() => sut.HttpClientConnection);
            }
示例#3
0
            public void MissingApiKey_Throws()
            {
                var fixture = new EnterspeedConnectionTestFixture();

                fixture.ConfigurationProvider
                .Configuration
                .Returns(new EnterspeedConfiguration()
                {
                    BaseUrl = "https://example.com/"
                });

                var sut = fixture.Create <EnterspeedConnection>();

                Assert.Throws <Exception>(() => sut.HttpClientConnection);
            }
示例#4
0
            public void EstablishesConnectionIfNull_NotNull()
            {
                var fixture = new EnterspeedConnectionTestFixture();

                fixture.ConfigurationProvider
                .Configuration
                .Returns(new EnterspeedConfiguration()
                {
                    ApiKey  = "source-" + Guid.NewGuid(),
                    BaseUrl = "https://example.com/"
                });

                var sut = fixture.Create <EnterspeedConnection>();

                Assert.NotNull(sut.HttpClientConnection);
            }
示例#5
0
            public void ApiKeyIsAddedToHeaders_Equal()
            {
                var fixture = new EnterspeedConnectionTestFixture();

                var apiKey = "source-" + Guid.NewGuid();

                fixture.ConfigurationProvider
                .Configuration
                .Returns(new EnterspeedConfiguration()
                {
                    ApiKey  = apiKey,
                    BaseUrl = "https://example.com/"
                });

                var sut = fixture.Create <EnterspeedConnection>();

                Assert.Equal(apiKey, sut.HttpClientConnection.DefaultRequestHeaders.GetValues("X-Api-Key").First());
            }
示例#6
0
            public void CreatesNewHttpClient_NotEqual()
            {
                var fixture = new EnterspeedConnectionTestFixture();

                fixture.ConfigurationProvider
                .Configuration
                .Returns(new EnterspeedConfiguration()
                {
                    ApiKey  = "source-" + Guid.NewGuid(),
                    BaseUrl = "https://example.com/"
                });

                var sut = fixture.Create <EnterspeedConnection>();

                var oldHttpClient = sut.HttpClientConnection;

                sut.Flush();

                var newHttpClient = sut.HttpClientConnection;

                Assert.NotEqual(oldHttpClient, newHttpClient);
            }