Browse Source

Made Volo.Abp.Http.Client.Tests tests properly working after asp.net core 3.0 migration.

pull/1810/head
Halil İbrahim Kalkan 7 years ago
parent
commit
d1901aa9e7
  1. 9
      framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs
  2. 17
      framework/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/ApiExploring/AbpApiDefinitionController_Tests.cs
  3. 2
      framework/test/Volo.Abp.AspNetCore.Tests/Volo/Abp/AspNetCore/AbpAspNetCoreTestBase.cs
  4. 9
      framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestBase.cs
  5. 15
      framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpClientTestModule.cs
  6. 9
      framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestBase.cs
  7. 3
      framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/PersonAppServiceClientProxy_Tests.cs
  8. 2
      framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/DynamicProxying/RegularTestControllerClientProxy_Tests.cs
  9. 6
      framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/Startup.cs

9
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();
}
}

17
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<ApplicationApiDescriptionModel>("/api/abp/api-definition");
model.ShouldNotBeNull();
}
}
}

2
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;
}

9
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<Startup>
{
}
}

15
framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestModule.cs → 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));
}
}
}

9
framework/test/Volo.Abp.Http.Client.Tests/Volo/Abp/Http/AbpHttpTestBase.cs

@ -1,9 +0,0 @@
using Volo.Abp.AspNetCore;
namespace Volo.Abp.Http
{
public abstract class AbpHttpTestBase : AbpAspNetCoreTestBase<Startup>
{
}
}

3
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<Person, Guid> _personRepository;

2
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!

6
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<AbpHttpTestModule>(options =>
services.AddApplication<AbpHttpClientTestModule>(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();
}

Loading…
Cancel
Save