Инжект новой фабрики клиентов вместо PersistenceClientFactory в интеграционных тестах
Some checks failed
Unit tests / test (push) Failing after 1m16s
Some checks failed
Unit tests / test (push) Failing after 1m16s
This commit is contained in:
parent
4ec4ec17eb
commit
6873a32667
@ -6,7 +6,7 @@ namespace DD.Persistence.Client.Clients.Interfaces;
|
|||||||
/// Клиент для работы с временными данными
|
/// Клиент для работы с временными данными
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <typeparam name="TDto"></typeparam>
|
/// <typeparam name="TDto"></typeparam>
|
||||||
public interface ITimeSeriesClient<TDto> : IDisposable where TDto : class, new()
|
public interface ITimeSeriesClient<TDto> : IDisposable where TDto : class, ITimeSeriesAbstractDto
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Добавление записей
|
/// Добавление записей
|
||||||
|
@ -5,7 +5,7 @@ using Refit;
|
|||||||
|
|
||||||
namespace DD.Persistence.Client.Clients.Interfaces.Refit
|
namespace DD.Persistence.Client.Clients.Interfaces.Refit
|
||||||
{
|
{
|
||||||
public interface IRefitTechMessagesClient : IDisposable
|
public interface IRefitTechMessagesClient : IRefitClient, IDisposable
|
||||||
{
|
{
|
||||||
private const string BaseRoute = "/api/techMessages";
|
private const string BaseRoute = "/api/techMessages";
|
||||||
|
|
||||||
|
@ -2,8 +2,8 @@ using DD.Persistence.Models;
|
|||||||
using Refit;
|
using Refit;
|
||||||
|
|
||||||
namespace DD.Persistence.Client.Clients.Interfaces.Refit;
|
namespace DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
public interface IRefitTimeSeriesClient<TDto> : IDisposable
|
public interface IRefitTimeSeriesClient<TDto> : IRefitClient, IDisposable
|
||||||
where TDto : class, new()
|
where TDto : class, ITimeSeriesAbstractDto
|
||||||
{
|
{
|
||||||
private const string BaseRoute = "/api/dataSaub";
|
private const string BaseRoute = "/api/dataSaub";
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ using Refit;
|
|||||||
|
|
||||||
namespace DD.Persistence.Client.Clients.Interfaces.Refit;
|
namespace DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
|
|
||||||
public interface IRefitTimestampedSetClient : IDisposable
|
public interface IRefitTimestampedSetClient : IRefitClient, IDisposable
|
||||||
{
|
{
|
||||||
private const string baseUrl = "/api/TimestampedSet/{idDiscriminator}";
|
private const string baseUrl = "/api/TimestampedSet/{idDiscriminator}";
|
||||||
|
|
||||||
|
@ -11,9 +11,9 @@ public class TechMessagesClient : BaseClient, ITechMessagesClient
|
|||||||
{
|
{
|
||||||
private readonly IRefitTechMessagesClient refitTechMessagesClient;
|
private readonly IRefitTechMessagesClient refitTechMessagesClient;
|
||||||
|
|
||||||
public TechMessagesClient(IRefitTechMessagesClient refitTechMessagesClient, ILogger<TechMessagesClient> logger) : base(logger)
|
public TechMessagesClient(IRefitClientFactory<IRefitTechMessagesClient> refitTechMessagesClientFactory, ILogger<TechMessagesClient> logger) : base(logger)
|
||||||
{
|
{
|
||||||
this.refitTechMessagesClient = refitTechMessagesClient;
|
this.refitTechMessagesClient = refitTechMessagesClientFactory.Create();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<PaginationContainer<TechMessageDto>> GetPage(PaginationRequest request, CancellationToken token)
|
public async Task<PaginationContainer<TechMessageDto>> GetPage(PaginationRequest request, CancellationToken token)
|
||||||
|
@ -5,13 +5,13 @@ using DD.Persistence.Client.Clients.Interfaces.Refit;
|
|||||||
using DD.Persistence.Models;
|
using DD.Persistence.Models;
|
||||||
|
|
||||||
namespace DD.Persistence.Client.Clients;
|
namespace DD.Persistence.Client.Clients;
|
||||||
public class TimeSeriesClient<TDto> : BaseClient, ITimeSeriesClient<TDto> where TDto : class, new()
|
public class TimeSeriesClient<TDto> : BaseClient, ITimeSeriesClient<TDto> where TDto : class, ITimeSeriesAbstractDto
|
||||||
{
|
{
|
||||||
private readonly IRefitTimeSeriesClient<TDto> timeSeriesClient;
|
private readonly IRefitTimeSeriesClient<TDto> timeSeriesClient;
|
||||||
|
|
||||||
public TimeSeriesClient(IRefitTimeSeriesClient<TDto> refitTechMessagesClient, ILogger<TimeSeriesClient<TDto>> logger) : base(logger)
|
public TimeSeriesClient(IRefitClientFactory<IRefitTimeSeriesClient<TDto>> refitTechMessagesClientFactory, ILogger<TimeSeriesClient<TDto>> logger) : base(logger)
|
||||||
{
|
{
|
||||||
this.timeSeriesClient = refitTechMessagesClient;
|
this.timeSeriesClient = refitTechMessagesClientFactory.Create();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<int> AddRange(IEnumerable<TDto> dtos, CancellationToken token)
|
public async Task<int> AddRange(IEnumerable<TDto> dtos, CancellationToken token)
|
||||||
|
@ -9,9 +9,9 @@ public class TimestampedSetClient : BaseClient, ITimestampedSetClient
|
|||||||
{
|
{
|
||||||
private readonly IRefitTimestampedSetClient refitTimestampedSetClient;
|
private readonly IRefitTimestampedSetClient refitTimestampedSetClient;
|
||||||
|
|
||||||
public TimestampedSetClient(IRefitTimestampedSetClient refitTimestampedSetClient, ILogger<TimestampedSetClient> logger) : base(logger)
|
public TimestampedSetClient(IRefitClientFactory<IRefitTimestampedSetClient> refitTimestampedSetClientFactory, ILogger<TimestampedSetClient> logger) : base(logger)
|
||||||
{
|
{
|
||||||
this.refitTimestampedSetClient = refitTimestampedSetClient;
|
this.refitTimestampedSetClient = refitTimestampedSetClientFactory.Create();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<int> AddRange(Guid idDiscriminator, IEnumerable<TimestampedSetDto> sets, CancellationToken token)
|
public async Task<int> AddRange(Guid idDiscriminator, IEnumerable<TimestampedSetDto> sets, CancellationToken token)
|
||||||
|
@ -9,9 +9,9 @@ public class WitsDataClient : BaseClient, IWitsDataClient
|
|||||||
{
|
{
|
||||||
private readonly IRefitWitsDataClient refitWitsDataClient;
|
private readonly IRefitWitsDataClient refitWitsDataClient;
|
||||||
|
|
||||||
public WitsDataClient(IRefitWitsDataClient refitWitsDataClient, ILogger<WitsDataClient> logger) : base(logger)
|
public WitsDataClient(IRefitClientFactory<IRefitWitsDataClient> refitWitsDataClientFactory, ILogger<WitsDataClient> logger) : base(logger)
|
||||||
{
|
{
|
||||||
this.refitWitsDataClient = refitWitsDataClient;
|
this.refitWitsDataClient = refitWitsDataClientFactory.Create();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<int> AddRange(IEnumerable<WitsDataDto> dtos, CancellationToken token)
|
public async Task<int> AddRange(IEnumerable<WitsDataDto> dtos, CancellationToken token)
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
using DD.Persistence.Client.Clients;
|
using DD.Persistence.Client.Clients;
|
||||||
using DD.Persistence.Client.Clients.Interfaces;
|
using DD.Persistence.Client.Clients.Interfaces;
|
||||||
|
using DD.Persistence.Models;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
|
|
||||||
namespace DD.Persistence.Client;
|
namespace DD.Persistence.Client;
|
||||||
@ -16,14 +17,14 @@ public static class DependencyInjection
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static IServiceCollection AddPersistenceClients(this IServiceCollection services)
|
public static IServiceCollection AddPersistenceClients(this IServiceCollection services)
|
||||||
{
|
{
|
||||||
services.AddSingleton(typeof(IRefitClientFactory<>), typeof(RefitClientFactory<>));
|
services.AddTransient(typeof(IRefitClientFactory<>), typeof(RefitClientFactory<>));
|
||||||
services.AddTransient<IChangeLogClient, ChangeLogClient>();
|
services.AddTransient<IChangeLogClient, ChangeLogClient>();
|
||||||
services.AddTransient<IDataSourceSystemClient, DataSourceSystemClient>();
|
services.AddTransient<IDataSourceSystemClient, DataSourceSystemClient>();
|
||||||
services.AddTransient<ISetpointClient, SetpointClient>();
|
services.AddTransient<ISetpointClient, SetpointClient>();
|
||||||
//services.AddTransient<ITechMessagesClient, TechMessagesClient>();
|
services.AddTransient<ITechMessagesClient, TechMessagesClient>();
|
||||||
//services.AddTransient<ITimeSeriesClient<>, TimeSeriesClient<>>();
|
services.AddTransient<ITimeSeriesClient<DataSaubDto>, TimeSeriesClient<DataSaubDto>>();
|
||||||
//services.AddTransient<ITimeSeriesClient, TimeSeriesClient>();
|
services.AddTransient<ITimestampedSetClient, TimestampedSetClient>();
|
||||||
//services.AddTransient<IWitsDataClient, WitsDataClient>();
|
services.AddTransient<IWitsDataClient, WitsDataClient>();
|
||||||
return services;
|
return services;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,146 +1,146 @@
|
|||||||
using Microsoft.Extensions.Configuration;
|
//using Microsoft.Extensions.Configuration;
|
||||||
using DD.Persistence.Client.Clients.Interfaces;
|
//using DD.Persistence.Client.Clients.Interfaces;
|
||||||
using DD.Persistence.Client.Clients;
|
//using DD.Persistence.Client.Clients;
|
||||||
using DD.Persistence.Client.Helpers;
|
//using DD.Persistence.Client.Helpers;
|
||||||
using Refit;
|
//using Refit;
|
||||||
using DD.Persistence.Factories;
|
//using DD.Persistence.Factories;
|
||||||
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
//using DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
using Microsoft.Extensions.Logging;
|
//using Microsoft.Extensions.Logging;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
//using Microsoft.Extensions.DependencyInjection;
|
||||||
using System.Text.Json;
|
//using System.Text.Json;
|
||||||
|
|
||||||
namespace DD.Persistence.Client
|
//namespace DD.Persistence.Client
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Фабрика клиентов для доступа к Persistence - сервису
|
|
||||||
/// </summary>
|
|
||||||
public class PersistenceClientFactory
|
|
||||||
{
|
|
||||||
private static readonly JsonSerializerOptions JsonSerializerOptions = new()
|
|
||||||
{
|
|
||||||
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
|
|
||||||
PropertyNameCaseInsensitive = true
|
|
||||||
};
|
|
||||||
private static readonly RefitSettings RefitSettings = new(new SystemTextJsonContentSerializer(JsonSerializerOptions));
|
|
||||||
private readonly IServiceProvider provider;
|
|
||||||
private HttpClient httpClient;
|
|
||||||
public PersistenceClientFactory(IHttpClientFactory httpClientFactory, IServiceProvider provider, IConfiguration configuration)
|
|
||||||
{
|
|
||||||
this.provider = provider;
|
|
||||||
|
|
||||||
httpClient = httpClientFactory.CreateClient();
|
|
||||||
|
|
||||||
httpClient.Authorize(configuration);
|
|
||||||
}
|
|
||||||
|
|
||||||
public PersistenceClientFactory(IHttpClientFactory httpClientFactory, IAuthTokenFactory authTokenFactory, IServiceProvider provider, IConfiguration configuration)
|
|
||||||
{
|
|
||||||
this.provider = provider;
|
|
||||||
|
|
||||||
httpClient = httpClientFactory.CreateClient();
|
|
||||||
|
|
||||||
var token = authTokenFactory.GetToken();
|
|
||||||
httpClient.Authorize(token);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Получить клиент для работы с уставками
|
|
||||||
/// </summary>
|
|
||||||
/// <returns></returns>
|
|
||||||
//public ISetpointClient GetSetpointClient()
|
|
||||||
//{
|
//{
|
||||||
// var logger = provider.GetRequiredService<ILogger<SetpointClient>>();
|
// /// <summary>
|
||||||
|
// /// Фабрика клиентов для доступа к Persistence - сервису
|
||||||
|
// /// </summary>
|
||||||
|
// public class PersistenceClientFactory
|
||||||
|
// {
|
||||||
|
// private static readonly JsonSerializerOptions JsonSerializerOptions = new()
|
||||||
|
// {
|
||||||
|
// PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
|
||||||
|
// PropertyNameCaseInsensitive = true
|
||||||
|
// };
|
||||||
|
// private static readonly RefitSettings RefitSettings = new(new SystemTextJsonContentSerializer(JsonSerializerOptions));
|
||||||
|
// private readonly IServiceProvider provider;
|
||||||
|
// private HttpClient httpClient;
|
||||||
|
// public PersistenceClientFactory(IHttpClientFactory httpClientFactory, IServiceProvider provider, IConfiguration configuration)
|
||||||
|
// {
|
||||||
|
// this.provider = provider;
|
||||||
|
|
||||||
// var restClient = RestService.For<IRefitSetpointClient>(httpClient, RefitSettings);
|
// httpClient = httpClientFactory.CreateClient();
|
||||||
// var client = new SetpointClient(restClient, logger);
|
|
||||||
|
|
||||||
// return client;
|
// httpClient.Authorize(configuration);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
/// <summary>
|
// public PersistenceClientFactory(IHttpClientFactory httpClientFactory, IAuthTokenFactory authTokenFactory, IServiceProvider provider, IConfiguration configuration)
|
||||||
/// Получить клиент для работы с технологическими сообщениями
|
|
||||||
/// </summary>
|
|
||||||
/// <returns></returns>
|
|
||||||
public ITechMessagesClient GetTechMessagesClient()
|
|
||||||
{
|
|
||||||
var logger = provider.GetRequiredService<ILogger<TechMessagesClient>>();
|
|
||||||
|
|
||||||
var restClient = RestService.For<IRefitTechMessagesClient>(httpClient, RefitSettings);
|
|
||||||
var client = new TechMessagesClient(restClient, logger);
|
|
||||||
|
|
||||||
return client;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Получить клиент для работы с временными данными
|
|
||||||
/// </summary>
|
|
||||||
/// <typeparam name="TDto"></typeparam>
|
|
||||||
/// <returns></returns>
|
|
||||||
public ITimeSeriesClient<TDto> GetTimeSeriesClient<TDto>()
|
|
||||||
where TDto : class, new()
|
|
||||||
{
|
|
||||||
var logger = provider.GetRequiredService<ILogger<TimeSeriesClient<TDto>>>();
|
|
||||||
|
|
||||||
var restClient = RestService.For<IRefitTimeSeriesClient<TDto>>(httpClient, RefitSettings);
|
|
||||||
var client = new TimeSeriesClient<TDto>(restClient, logger);
|
|
||||||
|
|
||||||
return client;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Получить клиент для работы с данными с отметкой времени
|
|
||||||
/// </summary>
|
|
||||||
/// <returns></returns>
|
|
||||||
public ITimestampedSetClient GetTimestampedSetClient()
|
|
||||||
{
|
|
||||||
var logger = provider.GetRequiredService<ILogger<TimestampedSetClient>>();
|
|
||||||
|
|
||||||
var restClient = RestService.For<IRefitTimestampedSetClient>(httpClient, RefitSettings);
|
|
||||||
var client = new TimestampedSetClient(restClient, logger);
|
|
||||||
|
|
||||||
return client;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Получить клиент для работы с записями ChangeLog
|
|
||||||
/// </summary>
|
|
||||||
/// <returns></returns>
|
|
||||||
//public IChangeLogClient GetChangeLogClient()
|
|
||||||
// {
|
// {
|
||||||
// var logger = provider.GetRequiredService<ILogger<ChangeLogClient>>();
|
// this.provider = provider;
|
||||||
|
|
||||||
// var restClient = RestService.For<IRefitChangeLogClient>(httpClient, RefitSettings);
|
// httpClient = httpClientFactory.CreateClient();
|
||||||
// var client = new ChangeLogClient(restClient, logger);
|
|
||||||
|
|
||||||
// return client;
|
// var token = authTokenFactory.GetToken();
|
||||||
|
// httpClient.Authorize(token);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// Получить клиент для работы c параметрами Wits
|
// /// Получить клиент для работы с уставками
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
/// <returns></returns>
|
// /// <returns></returns>
|
||||||
public IWitsDataClient GetWitsDataClient()
|
// //public ISetpointClient GetSetpointClient()
|
||||||
{
|
// //{
|
||||||
var logger = provider.GetRequiredService<ILogger<WitsDataClient>>();
|
// // var logger = provider.GetRequiredService<ILogger<SetpointClient>>();
|
||||||
|
|
||||||
var restClient = RestService.For<IRefitWitsDataClient>(httpClient, RefitSettings);
|
// // var restClient = RestService.For<IRefitSetpointClient>(httpClient, RefitSettings);
|
||||||
var client = new WitsDataClient(restClient, logger);
|
// // var client = new SetpointClient(restClient, logger);
|
||||||
|
|
||||||
return client;
|
// // return client;
|
||||||
}
|
// //}
|
||||||
|
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// Получить клиент для работы c системами
|
// /// Получить клиент для работы с технологическими сообщениями
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
/// <returns></returns>
|
// /// <returns></returns>
|
||||||
//public IDataSourceSystemClient GetDataSourceSystemClient()
|
// //public ITechMessagesClient GetTechMessagesClient()
|
||||||
//{
|
// //{
|
||||||
// var logger = provider.GetRequiredService<ILogger<DataSourceSystemClient>>();
|
// // var logger = provider.GetRequiredService<ILogger<TechMessagesClient>>();
|
||||||
|
|
||||||
// var restClient = RestService.For<IRefitDataSourceSystemClient>(httpClient, RefitSettings);
|
// // var restClient = RestService.For<IRefitTechMessagesClient>(httpClient, RefitSettings);
|
||||||
// var client = new DataSourceSystemClient(restClient, logger);
|
// // var client = new TechMessagesClient(restClient, logger);
|
||||||
|
|
||||||
// return client;
|
// // return client;
|
||||||
|
// //}
|
||||||
|
|
||||||
|
// /// <summary>
|
||||||
|
// /// Получить клиент для работы с временными данными
|
||||||
|
// /// </summary>
|
||||||
|
// /// <typeparam name="TDto"></typeparam>
|
||||||
|
// /// <returns></returns>
|
||||||
|
// //public ITimeSeriesClient<TDto> GetTimeSeriesClient<TDto>()
|
||||||
|
// // where TDto : class, new()
|
||||||
|
// //{
|
||||||
|
// // var logger = provider.GetRequiredService<ILogger<TimeSeriesClient<TDto>>>();
|
||||||
|
|
||||||
|
// // var restClient = RestService.For<IRefitTimeSeriesClient<TDto>>(httpClient, RefitSettings);
|
||||||
|
// // var client = new TimeSeriesClient<TDto>(restClient, logger);
|
||||||
|
|
||||||
|
// // return client;
|
||||||
|
// //}
|
||||||
|
|
||||||
|
// /// <summary>
|
||||||
|
// /// Получить клиент для работы с данными с отметкой времени
|
||||||
|
// /// </summary>
|
||||||
|
// /// <returns></returns>
|
||||||
|
// //public ITimestampedSetClient GetTimestampedSetClient()
|
||||||
|
// //{
|
||||||
|
// // var logger = provider.GetRequiredService<ILogger<TimestampedSetClient>>();
|
||||||
|
|
||||||
|
// // var restClient = RestService.For<IRefitTimestampedSetClient>(httpClient, RefitSettings);
|
||||||
|
// // var client = new TimestampedSetClient(restClient, logger);
|
||||||
|
|
||||||
|
// // return client;
|
||||||
|
// //}
|
||||||
|
|
||||||
|
// /// <summary>
|
||||||
|
// /// Получить клиент для работы с записями ChangeLog
|
||||||
|
// /// </summary>
|
||||||
|
// /// <returns></returns>
|
||||||
|
// //public IChangeLogClient GetChangeLogClient()
|
||||||
|
// //{
|
||||||
|
// // var logger = provider.GetRequiredService<ILogger<ChangeLogClient>>();
|
||||||
|
|
||||||
|
// // var restClient = RestService.For<IRefitChangeLogClient>(httpClient, RefitSettings);
|
||||||
|
// // var client = new ChangeLogClient(restClient, logger);
|
||||||
|
|
||||||
|
// // return client;
|
||||||
|
// //}
|
||||||
|
|
||||||
|
// /// <summary>
|
||||||
|
// /// Получить клиент для работы c параметрами Wits
|
||||||
|
// /// </summary>
|
||||||
|
// /// <returns></returns>
|
||||||
|
// //public IWitsDataClient GetWitsDataClient()
|
||||||
|
// //{
|
||||||
|
// // var logger = provider.GetRequiredService<ILogger<WitsDataClient>>();
|
||||||
|
|
||||||
|
// // var restClient = RestService.For<IRefitWitsDataClient>(httpClient, RefitSettings);
|
||||||
|
// // var client = new WitsDataClient(restClient, logger);
|
||||||
|
|
||||||
|
// // return client;
|
||||||
|
// //}
|
||||||
|
|
||||||
|
// /// <summary>
|
||||||
|
// /// Получить клиент для работы c системами
|
||||||
|
// /// </summary>
|
||||||
|
// /// <returns></returns>
|
||||||
|
// //public IDataSourceSystemClient GetDataSourceSystemClient()
|
||||||
|
// //{
|
||||||
|
// // var logger = provider.GetRequiredService<ILogger<DataSourceSystemClient>>();
|
||||||
|
|
||||||
|
// // var restClient = RestService.For<IRefitDataSourceSystemClient>(httpClient, RefitSettings);
|
||||||
|
// // var client = new DataSourceSystemClient(restClient, logger);
|
||||||
|
|
||||||
|
// // return client;
|
||||||
|
// //}
|
||||||
|
// }
|
||||||
//}
|
//}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -1,12 +1,14 @@
|
|||||||
using Microsoft.Extensions.Caching.Memory;
|
using DD.Persistence.Client;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using DD.Persistence.Client.Clients;
|
||||||
using DD.Persistence.Client;
|
|
||||||
using DD.Persistence.Client.Clients.Interfaces;
|
using DD.Persistence.Client.Clients.Interfaces;
|
||||||
|
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
using DD.Persistence.Database.Entity;
|
using DD.Persistence.Database.Entity;
|
||||||
using DD.Persistence.Models;
|
using DD.Persistence.Models;
|
||||||
using DD.Persistence.Models.Enumerations;
|
using DD.Persistence.Models.Enumerations;
|
||||||
using DD.Persistence.Models.Requests;
|
using DD.Persistence.Models.Requests;
|
||||||
using System.Net;
|
using Microsoft.Extensions.Caching.Memory;
|
||||||
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
|
|
||||||
namespace DD.Persistence.IntegrationTests.Controllers
|
namespace DD.Persistence.IntegrationTests.Controllers
|
||||||
@ -18,11 +20,12 @@ namespace DD.Persistence.IntegrationTests.Controllers
|
|||||||
private readonly IMemoryCache memoryCache;
|
private readonly IMemoryCache memoryCache;
|
||||||
public TechMessagesControllerTest(WebAppFactoryFixture factory) : base(factory)
|
public TechMessagesControllerTest(WebAppFactoryFixture factory) : base(factory)
|
||||||
{
|
{
|
||||||
var scope = factory.Services.CreateScope();
|
var refitClientFactory = scope.ServiceProvider
|
||||||
var persistenceClientFactory = scope.ServiceProvider
|
.GetRequiredService<IRefitClientFactory<IRefitTechMessagesClient>>();
|
||||||
.GetRequiredService<PersistenceClientFactory>();
|
var logger = scope.ServiceProvider.GetRequiredService<ILogger<TechMessagesClient>>();
|
||||||
|
|
||||||
techMessagesClient = persistenceClientFactory.GetTechMessagesClient();
|
techMessagesClient = scope.ServiceProvider
|
||||||
|
.GetRequiredService<ITechMessagesClient>();
|
||||||
memoryCache = scope.ServiceProvider.GetRequiredService<IMemoryCache>();
|
memoryCache = scope.ServiceProvider.GetRequiredService<IMemoryCache>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,16 +1,19 @@
|
|||||||
|
using DD.Persistence.Client;
|
||||||
|
using DD.Persistence.Client.Clients;
|
||||||
|
using DD.Persistence.Client.Clients.Interfaces;
|
||||||
|
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
|
using DD.Persistence.Database.Model;
|
||||||
|
using DD.Persistence.Models;
|
||||||
using Mapster;
|
using Mapster;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using DD.Persistence.Client;
|
using Microsoft.Extensions.Logging;
|
||||||
using DD.Persistence.Client.Clients.Interfaces;
|
|
||||||
using DD.Persistence.Database.Model;
|
|
||||||
using System.Net;
|
|
||||||
using Xunit;
|
using Xunit;
|
||||||
|
|
||||||
namespace DD.Persistence.IntegrationTests.Controllers;
|
namespace DD.Persistence.IntegrationTests.Controllers;
|
||||||
|
|
||||||
public abstract class TimeSeriesBaseControllerTest<TEntity, TDto> : BaseIntegrationTest
|
public abstract class TimeSeriesBaseControllerTest<TEntity, TDto> : BaseIntegrationTest
|
||||||
where TEntity : class, ITimestampedData, new()
|
where TEntity : class, ITimestampedData, new()
|
||||||
where TDto : class, new()
|
where TDto : class, ITimeSeriesAbstractDto, new()
|
||||||
{
|
{
|
||||||
private readonly ITimeSeriesClient<TDto> timeSeriesClient;
|
private readonly ITimeSeriesClient<TDto> timeSeriesClient;
|
||||||
|
|
||||||
@ -18,11 +21,12 @@ public abstract class TimeSeriesBaseControllerTest<TEntity, TDto> : BaseIntegrat
|
|||||||
{
|
{
|
||||||
dbContext.CleanupDbSet<TEntity>();
|
dbContext.CleanupDbSet<TEntity>();
|
||||||
|
|
||||||
var scope = factory.Services.CreateScope();
|
var refitClientFactory = scope.ServiceProvider
|
||||||
var persistenceClientFactory = scope.ServiceProvider
|
.GetRequiredService<IRefitClientFactory<IRefitTimeSeriesClient<TDto>>>();
|
||||||
.GetRequiredService<PersistenceClientFactory>();
|
var logger = scope.ServiceProvider.GetRequiredService<ILogger<TimeSeriesClient<TDto>>>();
|
||||||
|
|
||||||
timeSeriesClient = persistenceClientFactory.GetTimeSeriesClient<TDto>();
|
timeSeriesClient = scope.ServiceProvider
|
||||||
|
.GetRequiredService<ITimeSeriesClient<TDto>>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task InsertRangeSuccess(TDto dto)
|
public async Task InsertRangeSuccess(TDto dto)
|
||||||
|
@ -3,6 +3,9 @@ using DD.Persistence.Client;
|
|||||||
using DD.Persistence.Client.Clients.Interfaces;
|
using DD.Persistence.Client.Clients.Interfaces;
|
||||||
using DD.Persistence.Models;
|
using DD.Persistence.Models;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
|
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
|
using DD.Persistence.Client.Clients;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
|
|
||||||
namespace DD.Persistence.IntegrationTests.Controllers;
|
namespace DD.Persistence.IntegrationTests.Controllers;
|
||||||
public class TimestampedSetControllerTest : BaseIntegrationTest
|
public class TimestampedSetControllerTest : BaseIntegrationTest
|
||||||
@ -11,10 +14,12 @@ public class TimestampedSetControllerTest : BaseIntegrationTest
|
|||||||
|
|
||||||
public TimestampedSetControllerTest(WebAppFactoryFixture factory) : base(factory)
|
public TimestampedSetControllerTest(WebAppFactoryFixture factory) : base(factory)
|
||||||
{
|
{
|
||||||
var persistenceClientFactory = scope.ServiceProvider
|
var refitClientFactory = scope.ServiceProvider
|
||||||
.GetRequiredService<PersistenceClientFactory>();
|
.GetRequiredService<IRefitClientFactory<IRefitTimestampedSetClient>>();
|
||||||
|
var logger = scope.ServiceProvider.GetRequiredService<ILogger<TimestampedSetClient>>();
|
||||||
|
|
||||||
client = persistenceClientFactory.GetTimestampedSetClient();
|
client = scope.ServiceProvider
|
||||||
|
.GetRequiredService<ITimestampedSetClient>();
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
|
@ -1,13 +1,12 @@
|
|||||||
using Microsoft.Extensions.DependencyInjection;
|
using DD.Persistence.Client;
|
||||||
|
using DD.Persistence.Client.Clients;
|
||||||
|
using DD.Persistence.Client.Clients.Interfaces;
|
||||||
|
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
||||||
using DD.Persistence.Database.Entity;
|
using DD.Persistence.Database.Entity;
|
||||||
using DD.Persistence.Models;
|
using DD.Persistence.Models;
|
||||||
using System.Net;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using Xunit;
|
|
||||||
using DD.Persistence.Client.Clients.Interfaces;
|
|
||||||
using DD.Persistence.Client;
|
|
||||||
using DD.Persistence.Client.Clients.Interfaces.Refit;
|
|
||||||
using DD.Persistence.Client.Clients;
|
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
|
using Xunit;
|
||||||
|
|
||||||
namespace DD.Persistence.IntegrationTests.Controllers;
|
namespace DD.Persistence.IntegrationTests.Controllers;
|
||||||
public class WitsDataControllerTest : BaseIntegrationTest
|
public class WitsDataControllerTest : BaseIntegrationTest
|
||||||
|
Loading…
Reference in New Issue
Block a user