public void When_a_user_and_password_are_provided_it_should_create_a_URI_with_user_password() { string ConnectionString = "Scheme=https;User=user1;Pwd=password1;Server=localhost;Index=log_test;Port=9200;rolling=true"; var uriBuilder = ElasticSearchUri.For(ConnectionString).GetUri(useBulkApi: false); Uri uri = uriBuilder; uri.UserInfo.Should().Be("user1:password1"); }
public void When_no_scheme_is_provided_it_should_create_a_URI_with_http() { string ConnectionString = "Server=localhost;Index=log_test;Port=9200;rolling=true"; var uriBuilder = ElasticSearchUri.For(ConnectionString).GetUri(useBulkApi: false); Uri uri = uriBuilder; uri.Scheme.Should().Be("http"); }
public void When_no_user_password_is_provided_it_should_create_a_request_with_no_auth_header() { string ConnectionString = "Server=localhost;Index=log_test;Port=9200;rolling=true"; var uriBuilder = ElasticSearchUri.For(ConnectionString).GetUri(useBulkApi: false); Uri uri = uriBuilder; uri.Scheme.Should().Be("http"); var request = HttpClient.RequestFor(uri, new RequestOptions(new CaseInsensitiveStringDictionary <string>())); request.Headers.AllKeys.Should().NotContain("Authorization"); }
public void When_a_user_and_password_are_provided_it_should_create_a_web_request_with_a_basic_auth_header() { string ConnectionString = "Scheme=https;User=user1;Pwd=password1;Server=localhost;Index=log_test;Port=9200;rolling=true"; var uriBuilder = ElasticSearchUri.For(ConnectionString).GetUri(useBulkApi: false); Uri uri = uriBuilder; var request = HttpClient.RequestFor(uri, new RequestOptions(new CaseInsensitiveStringDictionary <string>())); request.Headers.AllKeys.Should().Contain("Authorization"); var header = request.Headers["Authorization"]; header.Should().Be("Basic dXNlcjE6cGFzc3dvcmQx"); }
public static IRepository Create(string connectionString, RequestOptions options, IHttpClient httpClient) { return(new Repository(ElasticSearchUri.For(connectionString), options, httpClient)); }
/// <summary>Initializes a new instance of the <see cref="Repository"/> class.</summary> /// <param name="elasticSearchUri">The elastic search uri.</param> /// <param name="options">The options.</param> /// <param name="httpClient">The HTTP client.</param> public Repository(ElasticSearchUri elasticSearchUri, RequestOptions options, IHttpClient httpClient) { this.elasticSearchUri = elasticSearchUri; this.httpClient = httpClient; this.options = options; }
static Uri UriFor(string connectionString, bool useBulkApi) { return(ElasticSearchUri.For(connectionString).GetUri(useBulkApi)); }