diff --git a/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs b/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs index e8463e16cc..71de80b018 100644 --- a/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs +++ b/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs @@ -8,11 +8,11 @@ namespace Volo.Abp.AspNetCore.TestBase.DynamicProxying public class AspNetCoreTestDynamicProxyHttpClientFactory : IDynamicProxyHttpClientFactory, ITransientDependency { private readonly ITestServerAccessor _testServerAccessor; - private readonly IHttpClientFactory _httpClientFactory; - public AspNetCoreTestDynamicProxyHttpClientFactory(ITestServerAccessor testServerAccessor, IHttpClientFactory httpClientFactory) { + public AspNetCoreTestDynamicProxyHttpClientFactory( + ITestServerAccessor testServerAccessor) + { _testServerAccessor = testServerAccessor; - _httpClientFactory = httpClientFactory; } public HttpClient Create() @@ -20,7 +20,8 @@ namespace Volo.Abp.AspNetCore.TestBase.DynamicProxying return _testServerAccessor.Server.CreateClient(); } - public HttpClient Create(string name) { + public HttpClient Create(string name) + { return Create(); } } diff --git a/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ApiExploring/AbpApiDefinitionController_Tests.cs b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ApiExploring/AbpApiDefinitionController_Tests.cs new file mode 100644 index 0000000000..44b206e462 --- /dev/null +++ b/framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ApiExploring/AbpApiDefinitionController_Tests.cs @@ -0,0 +1,17 @@ +using System.Threading.Tasks; +using Shouldly; +using Volo.Abp.Http.Modeling; +using Xunit; + +namespace Volo.Abp.AspNetCore.Mvc.ApiExploring +{ + public class AbpApiDefinitionController_Tests : AspNetCoreMvcTestBase + { + [Fact] + public async Task GetAsync() + { + var model = await GetResponseAsObjectAsync("/api/abp/api-definition"); + model.ShouldNotBeNull(); + } + } +} diff --git a/framework/test/Volo.Abp.AspNetCore.Tests/Volo/Abp/AspNetCore/AbpAspNetCoreTestBase.cs b/framework/test/Volo.Abp.AspNetCore.Tests/Volo/Abp/AspNetCore/AbpAspNetCoreTestBase.cs index c6e59734b1..dd5edff807 100644 --- a/framework/test/Volo.Abp.AspNetCore.Tests/Volo/Abp/AspNetCore/AbpAspNetCoreTestBase.cs +++ b/framework/test/Volo.Abp.AspNetCore.Tests/Volo/Abp/AspNetCore/AbpAspNetCoreTestBase.cs @@ -43,9 +43,7 @@ namespace Volo.Abp.AspNetCore using (var requestMessage = new HttpRequestMessage(HttpMethod.Get, url)) { requestMessage.Headers.Add("Accept-Language", CultureInfo.CurrentUICulture.Name); - var response = await Client.SendAsync(requestMessage); - response.StatusCode.ShouldBe(expectedStatusCode); return response; } diff --git a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestBase.cs b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestBase.cs new file mode 100644 index 0000000000..7dc930daa1 --- /dev/null +++ b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestBase.cs @@ -0,0 +1,9 @@ +using Volo.Abp.AspNetCore; + +namespace Volo.Abp.Http +{ + public abstract class AbpHttpClientTestBase : AbpAspNetCoreTestBase + { + + } +} \ No newline at end of file diff --git a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestModule.cs b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestModule.cs similarity index 56% rename from framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestModule.cs rename to framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestModule.cs index 4ee13e7dc7..ecde843177 100644 --- a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestModule.cs +++ b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestModule.cs @@ -1,4 +1,5 @@ -using Microsoft.Extensions.DependencyInjection; +using Microsoft.AspNetCore.Mvc.ApplicationParts; +using Microsoft.Extensions.DependencyInjection; using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.Http.Client; using Volo.Abp.Http.DynamicProxying; @@ -7,8 +8,11 @@ using Volo.Abp.TestApp; namespace Volo.Abp.Http { - [DependsOn(typeof(AbpAspNetCoreMvcTestModule), typeof(AbpHttpClientModule))] - public class AbpHttpTestModule : AbpModule + [DependsOn( + typeof(AbpHttpClientModule), + typeof(AbpAspNetCoreMvcTestModule) + )] + public class AbpHttpClientTestModule : AbpModule { public override void ConfigureServices(ServiceConfigurationContext context) { @@ -19,6 +23,11 @@ namespace Volo.Abp.Http { options.RemoteServices.Default = new RemoteServiceConfiguration("/"); }); + + //This is needed after ASP.NET Core 3.0 upgrade. + context.Services.AddMvc() + .PartManager.ApplicationParts + .Add(new AssemblyPart(typeof(AbpAspNetCoreMvcModule).Assembly)); } } } diff --git a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestBase.cs b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestBase.cs deleted file mode 100644 index d2db4dc3ac..0000000000 --- a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestBase.cs +++ /dev/null @@ -1,9 +0,0 @@ -using Volo.Abp.AspNetCore; - -namespace Volo.Abp.Http -{ - public abstract class AbpHttpTestBase : AbpAspNetCoreTestBase - { - - } -} \ No newline at end of file diff --git a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/PersonAppServiceClientProxy_Tests.cs b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/PersonAppServiceClientProxy_Tests.cs index 629d979d95..aeae7ef1b4 100644 --- a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/PersonAppServiceClientProxy_Tests.cs +++ b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/PersonAppServiceClientProxy_Tests.cs @@ -5,6 +5,7 @@ using Microsoft.Extensions.DependencyInjection; using Shouldly; using Volo.Abp.Application.Dtos; using Volo.Abp.Domain.Repositories; +using Volo.Abp.Http.Modeling; using Volo.Abp.TestApp.Application; using Volo.Abp.TestApp.Application.Dto; using Volo.Abp.TestApp.Domain; @@ -12,7 +13,7 @@ using Xunit; namespace Volo.Abp.Http.DynamicProxying { - public class PersonAppServiceClientProxy_Tests : AbpHttpTestBase + public class PersonAppServiceClientProxy_Tests : AbpHttpClientTestBase { private readonly IPeopleAppService _peopleAppService; private readonly IRepository _personRepository; diff --git a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/RegularTestControllerClientProxy_Tests.cs b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/RegularTestControllerClientProxy_Tests.cs index 1a59b39614..22d9354624 100644 --- a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/RegularTestControllerClientProxy_Tests.cs +++ b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/RegularTestControllerClientProxy_Tests.cs @@ -6,7 +6,7 @@ using Xunit; namespace Volo.Abp.Http.DynamicProxying { - public class RegularTestControllerClientProxy_Tests : AbpHttpTestBase + public class RegularTestControllerClientProxy_Tests : AbpHttpClientTestBase { //TODO: Create a regular MVC Controller and add different parameter bindings, verbs and routes and test client proxy for it! diff --git a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/Startup.cs b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/Startup.cs index 1179203000..4704128d9d 100644 --- a/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/Startup.cs +++ b/framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/Startup.cs @@ -1,8 +1,6 @@ using System; using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Logging; namespace Volo.Abp.Http { @@ -10,7 +8,7 @@ namespace Volo.Abp.Http { public IServiceProvider ConfigureServices(IServiceCollection services) { - services.AddApplication(options => + services.AddApplication(options => { options.UseAutofac(); }); @@ -19,7 +17,7 @@ namespace Volo.Abp.Http return services.BuildServiceProviderFromFactory(); } - public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory) + public void Configure(IApplicationBuilder app) { app.InitializeApplication(); }