diff --git a/src/Tests/Tests/Aggregations/AggregationUsageTestBase.cs b/src/Tests/Tests/Aggregations/AggregationUsageTestBase.cs index 85d7056405c..3953e1806fd 100644 --- a/src/Tests/Tests/Aggregations/AggregationUsageTestBase.cs +++ b/src/Tests/Tests/Aggregations/AggregationUsageTestBase.cs @@ -1,4 +1,6 @@ using System; +using System.Threading.Tasks; +using Elastic.Xunit.XunitPlumbing; using Elasticsearch.Net; using Nest; using Tests.Core.Client; @@ -7,19 +9,29 @@ using Tests.Domain; using Tests.Framework; using Tests.Framework.Integration; -using Tests.Framework.ManagedElasticsearch.Clusters; -using Tests.Framework.ManagedElasticsearch.NodeSeeders; using static Nest.Infer; -using Xunit; namespace Tests.Aggregations { public abstract class AggregationUsageTestBase : ApiIntegrationTestBase, ISearchRequest, SearchDescriptor, SearchRequest> { - protected AggregationUsageTestBase(ReadOnlyCluster cluster, EndpointUsage usage) : base(cluster, usage) - { - } + protected AggregationUsageTestBase(ReadOnlyCluster cluster, EndpointUsage usage) : base(cluster, usage) { } + + // https://youtrack.jetbrains.com/issue/RIDER-19912 + [U] protected override Task HitsTheCorrectUrl() => base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public override Task ReturnsExpectedStatusCode() => base.ReturnsExpectedResponse(); + + [I] public override Task ReturnsExpectedIsValid() => base.ReturnsExpectedIsValid(); + + [I] public override Task ReturnsExpectedResponse() => base.ReturnsExpectedResponse(); protected override LazyResponses ClientUsage() => Calls( fluent: (client, f) => client.Search(f), @@ -74,5 +86,20 @@ public abstract class ProjectsOnlyAggregationUsageTestBase : AggregationUsageTes protected ProjectsOnlyAggregationUsageTestBase(ReadOnlyCluster cluster, EndpointUsage usage) : base(cluster, usage) { } protected override Nest.Indices AgainstIndex => DefaultSeeder.ProjectsAliasFilter; + + // https://youtrack.jetbrains.com/issue/RIDER-19912 + [U] protected override Task HitsTheCorrectUrl() => base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public override Task ReturnsExpectedStatusCode() => base.ReturnsExpectedResponse(); + + [I] public override Task ReturnsExpectedIsValid() => base.ReturnsExpectedIsValid(); + + [I] public override Task ReturnsExpectedResponse() => base.ReturnsExpectedResponse(); } } diff --git a/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationAgainstNewIndexTestBase.cs b/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationAgainstNewIndexTestBase.cs index 5a1a978689a..3238e740aab 100644 --- a/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationAgainstNewIndexTestBase.cs +++ b/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationAgainstNewIndexTestBase.cs @@ -1,5 +1,7 @@ using System.Linq; +using System.Threading.Tasks; using Elastic.Managed.Ephemeral; +using Elastic.Xunit.XunitPlumbing; using Elasticsearch.Net; using Nest; using Tests.Core.Extensions; @@ -28,5 +30,20 @@ protected override void IntegrationSetup(IElasticClient client, CallUniqueValues } protected virtual ICreateIndexRequest CreateIndexSettings(CreateIndexDescriptor create) => create; + + // https://youtrack.jetbrains.com/issue/RIDER-19912 + [U] protected override Task HitsTheCorrectUrl() => base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public override Task ReturnsExpectedStatusCode() => base.ReturnsExpectedResponse(); + + [I] public override Task ReturnsExpectedIsValid() => base.ReturnsExpectedIsValid(); + + [I] public override Task ReturnsExpectedResponse() => base.ReturnsExpectedResponse(); } } diff --git a/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationTestBase.cs b/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationTestBase.cs index 3e03014416f..a1fb93fbc07 100644 --- a/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationTestBase.cs +++ b/src/Tests/Tests/Framework/EndpointTests/ApiIntegrationTestBase.cs @@ -33,13 +33,22 @@ protected ApiIntegrationTestBase(TCluster cluster, EndpointUsage usage) : base(c public override IElasticClient Client => this.Cluster.Client; protected override TInitializer Initializer => Activator.CreateInstance(); - [I] public async Task ReturnsExpectedStatusCode() => + // https://youtrack.jetbrains.com/issue/RIDER-19912 + [U] protected override Task HitsTheCorrectUrl() => base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public virtual async Task ReturnsExpectedStatusCode() => await this.AssertOnAllResponses(r => r.ApiCall.HttpStatusCode.Should().Be(this.ExpectStatusCode)); - [I] public async Task ReturnsExpectedIsValid() => + [I] public virtual async Task ReturnsExpectedIsValid() => await this.AssertOnAllResponses(r => r.ShouldHaveExpectedIsValid(this.ExpectIsValid)); - [I] public async Task ReturnsExpectedResponse() => await this.AssertOnAllResponses(ExpectResponse); + [I] public virtual async Task ReturnsExpectedResponse() => await this.AssertOnAllResponses(ExpectResponse); protected override Task AssertOnAllResponses(Action assert) { diff --git a/src/Tests/Tests/Framework/EndpointTests/ApiTestBase.cs b/src/Tests/Tests/Framework/EndpointTests/ApiTestBase.cs index a286c958b94..e1e38d694bf 100644 --- a/src/Tests/Tests/Framework/EndpointTests/ApiTestBase.cs +++ b/src/Tests/Tests/Framework/EndpointTests/ApiTestBase.cs @@ -26,17 +26,14 @@ public abstract class ApiTestBase - await this.AssertOnAllResponses(r => this.AssertUrl(r.ApiCall.Uri)); + [U] protected virtual async Task HitsTheCorrectUrl() => await this.AssertOnAllResponses(r => this.AssertUrl(r.ApiCall.Uri)); - [U] protected async Task UsesCorrectHttpMethod() => - await this.AssertOnAllResponses( - r => r.ApiCall.HttpMethod.Should().Be(this.HttpMethod, - this.UniqueValues.CurrentView.GetStringValue())); + [U] protected virtual async Task UsesCorrectHttpMethod() => + await this.AssertOnAllResponses(r => r.ApiCall.HttpMethod.Should().Be(this.HttpMethod, this.UniqueValues.CurrentView.GetStringValue())); - [U] protected void SerializesInitializer() => this.RoundTripsOrSerializes(this.Initializer); + [U] protected virtual void SerializesInitializer() => this.RoundTripsOrSerializes(this.Initializer); - [U] protected void SerializesFluent() => this.RoundTripsOrSerializes(this.Fluent?.Invoke(NewDescriptor())); + [U] protected virtual void SerializesFluent() => this.RoundTripsOrSerializes(this.Fluent?.Invoke(NewDescriptor())); private void AssertUrl(Uri u) => u.PathEquals(this.UrlPath, this.UniqueValues.CurrentView.GetStringValue()); } diff --git a/src/Tests/Tests/Framework/EndpointTests/CanConnectTestBase.cs b/src/Tests/Tests/Framework/EndpointTests/CanConnectTestBase.cs index 1399450c926..f4f2a578160 100644 --- a/src/Tests/Tests/Framework/EndpointTests/CanConnectTestBase.cs +++ b/src/Tests/Tests/Framework/EndpointTests/CanConnectTestBase.cs @@ -1,4 +1,6 @@ +using System.Threading.Tasks; using Elastic.Managed.Ephemeral; +using Elastic.Xunit.XunitPlumbing; using Elasticsearch.Net; using FluentAssertions; using Nest; @@ -32,5 +34,20 @@ protected override void ExpectResponse(IRootNodeInfoResponse response) response.Tagline.Should().NotBeNullOrWhiteSpace(); response.Name.Should().NotBeNullOrWhiteSpace(); } + + // https://youtrack.jetbrains.com/issue/RIDER-19912 + [U] protected override Task HitsTheCorrectUrl() => base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public override Task ReturnsExpectedStatusCode() => base.ReturnsExpectedResponse(); + + [I] public override Task ReturnsExpectedIsValid() => base.ReturnsExpectedIsValid(); + + [I] public override Task ReturnsExpectedResponse() => base.ReturnsExpectedResponse(); } } diff --git a/src/Tests/Tests/Framework/EndpointTests/ConnectionErrorTestBase.cs b/src/Tests/Tests/Framework/EndpointTests/ConnectionErrorTestBase.cs index 89b763e5f08..81fb959ab6b 100644 --- a/src/Tests/Tests/Framework/EndpointTests/ConnectionErrorTestBase.cs +++ b/src/Tests/Tests/Framework/EndpointTests/ConnectionErrorTestBase.cs @@ -25,7 +25,7 @@ protected override LazyResponses ClientUsage() => Calls( request: (client, r) => client.RootNodeInfo(r), requestAsync: (client, r) => client.RootNodeInfoAsync(r) ); - + protected override object ExpectJson { get; } = null; public override IElasticClient Client => this.Cluster.Client; diff --git a/src/Tests/Tests/Search/SearchUsageTestBase.cs b/src/Tests/Tests/Search/SearchUsageTestBase.cs index 2a741e84204..30a7c358497 100644 --- a/src/Tests/Tests/Search/SearchUsageTestBase.cs +++ b/src/Tests/Tests/Search/SearchUsageTestBase.cs @@ -1,4 +1,6 @@ -using Elasticsearch.Net; +using System.Threading.Tasks; +using Elastic.Xunit.XunitPlumbing; +using Elasticsearch.Net; using Nest; using Tests.Core.ManagedElasticsearch.Clusters; using Tests.Domain; @@ -32,5 +34,21 @@ protected override LazyResponses ClientUsage() => Calls( protected object ProjectFilterExpectedJson = new {term = new {type = new {value = Project.TypeName}}}; + // https://youtrack.jetbrains.com/issue/RIDER-19912 + [U] protected override Task HitsTheCorrectUrl() => base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public override Task ReturnsExpectedStatusCode() => base.ReturnsExpectedResponse(); + + [I] public override Task ReturnsExpectedIsValid() => base.ReturnsExpectedIsValid(); + + [I] public override Task ReturnsExpectedResponse() => base.ReturnsExpectedResponse(); + + } } diff --git a/src/Tests/Tests/XPack/MachineLearning/MachineLearningIntegrationTestBase.cs b/src/Tests/Tests/XPack/MachineLearning/MachineLearningIntegrationTestBase.cs index eb5c297b505..b2201f7e1a4 100644 --- a/src/Tests/Tests/XPack/MachineLearning/MachineLearningIntegrationTestBase.cs +++ b/src/Tests/Tests/XPack/MachineLearning/MachineLearningIntegrationTestBase.cs @@ -1,4 +1,5 @@ using System; +using System.Threading.Tasks; using Elastic.Xunit.XunitPlumbing; using Elasticsearch.Net; using Nest; @@ -19,6 +20,21 @@ public abstract class MachineLearningIntegrationTestBase base.HitsTheCorrectUrl(); + + [U] protected override Task UsesCorrectHttpMethod() => base.UsesCorrectHttpMethod(); + + [U] protected override void SerializesInitializer() => base.SerializesInitializer(); + + [U] protected override void SerializesFluent() => base.SerializesFluent(); + + [I] public override Task ReturnsExpectedStatusCode() => base.ReturnsExpectedResponse(); + + [I] public override Task ReturnsExpectedIsValid() => base.ReturnsExpectedIsValid(); + + [I] public override Task ReturnsExpectedResponse() => base.ReturnsExpectedResponse(); + protected IPutJobResponse PutJob(IElasticClient client, string jobId) { var putJobResponse = client.PutJob(jobId, f => f