mirror of
https://github.com/DrMboga/WotBlitzStatisticsBlazor.git
synced 2026-10-24 03:40:07 +02:00
Static dictionaries updater tests
This commit is contained in:
1 parent
71c0240437
commit
cacc60fc7f
8 files changed
+485
-7
No files matched your search
@@ -1,11 +1,32 @@
|
||||
using System.Threading.Tasks;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using AutoMapper;
|
||||
using WotBlitzStatisticsPro.Common.Model;
|
||||
using WotBlitzStatisticsPro.DataAccess;
|
||||
using WotBlitzStatisticsPro.WgApiClient;
|
||||
|
||||
namespace WotBlitzStatisticsPro.Logic.Dictionaries
|
||||
{
|
||||
public class AchievementsDictionaryUpdater : IDictionaryUpdater
|
||||
{
|
||||
public Task<UpdateDictionariesResponseItem> Update()
|
||||
private readonly IWargamingDictionariesApiClient _wargamingDictionariesApiClient;
|
||||
private readonly IDictionariesDataAccessor _dataAccessor;
|
||||
private readonly IMapper _mapper;
|
||||
|
||||
[Obsolete("Parameter-less constructor only for unit tests")]
|
||||
public AchievementsDictionaryUpdater()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public AchievementsDictionaryUpdater(IWargamingDictionariesApiClient wargamingDictionariesApiClient, IDictionariesDataAccessor dataAccessor, IMapper mapper)
|
||||
{
|
||||
_wargamingDictionariesApiClient = wargamingDictionariesApiClient;
|
||||
_dataAccessor = dataAccessor;
|
||||
_mapper = mapper;
|
||||
}
|
||||
|
||||
public virtual Task<UpdateDictionariesResponseItem> Update()
|
||||
{
|
||||
throw new System.NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -17,6 +17,12 @@ namespace WotBlitzStatisticsPro.Logic.Dictionaries
|
||||
private readonly IDictionariesDataAccessor _dataAccessor;
|
||||
private readonly IMapper _mapper;
|
||||
|
||||
[Obsolete("Parameter-less constructor only for unit tests")]
|
||||
public StaticDictionariesUpdater()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public StaticDictionariesUpdater(
|
||||
IWargamingDictionariesApiClient wargamingDictionariesApiClient,
|
||||
IDictionariesDataAccessor dataAccessor,
|
||||
@@ -26,7 +32,7 @@ namespace WotBlitzStatisticsPro.Logic.Dictionaries
|
||||
_dataAccessor = dataAccessor;
|
||||
_mapper = mapper;
|
||||
}
|
||||
public async Task<UpdateDictionariesResponseItem> Update()
|
||||
public virtual async Task<UpdateDictionariesResponseItem> Update()
|
||||
{
|
||||
var (
|
||||
languages,
|
||||
@@ -41,8 +47,6 @@ namespace WotBlitzStatisticsPro.Logic.Dictionaries
|
||||
await _dataAccessor.UpdateClanRoles(clanRoles);
|
||||
await _dataAccessor.UpdateAchievementsSections(achievementsSections);
|
||||
|
||||
// ToDo: create unit tests
|
||||
|
||||
return new UpdateDictionariesResponseItem
|
||||
{
|
||||
DictionaryType = DictionaryType.StaticDictionaries,
|
||||
|
||||
@@ -1,11 +1,32 @@
|
||||
using System.Threading.Tasks;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using AutoMapper;
|
||||
using WotBlitzStatisticsPro.Common.Model;
|
||||
using WotBlitzStatisticsPro.DataAccess;
|
||||
using WotBlitzStatisticsPro.WgApiClient;
|
||||
|
||||
namespace WotBlitzStatisticsPro.Logic.Dictionaries
|
||||
{
|
||||
public class VehiclesDictionaryUpdater : IDictionaryUpdater
|
||||
{
|
||||
public Task<UpdateDictionariesResponseItem> Update()
|
||||
private readonly IWargamingDictionariesApiClient _wargamingDictionariesApiClient;
|
||||
private readonly IDictionariesDataAccessor _dataAccessor;
|
||||
private readonly IMapper _mapper;
|
||||
|
||||
[Obsolete("Parameter-less constructor only for unit tests")]
|
||||
public VehiclesDictionaryUpdater()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public VehiclesDictionaryUpdater(IWargamingDictionariesApiClient wargamingDictionariesApiClient, IDictionariesDataAccessor dataAccessor, IMapper mapper)
|
||||
{
|
||||
_wargamingDictionariesApiClient = wargamingDictionariesApiClient;
|
||||
_dataAccessor = dataAccessor;
|
||||
_mapper = mapper;
|
||||
}
|
||||
|
||||
public virtual Task<UpdateDictionariesResponseItem> Update()
|
||||
{
|
||||
throw new System.NotImplementedException();
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.CompilerServices;
|
||||
using AutoMapper;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using WotBlitzStatisticsPro.Common.Model;
|
||||
@@ -6,6 +7,7 @@ using WotBlitzStatisticsPro.DataAccess;
|
||||
using WotBlitzStatisticsPro.Logic.Dictionaries;
|
||||
using WotBlitzStatisticsPro.WgApiClient;
|
||||
|
||||
[assembly: InternalsVisibleTo("WotBlitzStatisticsPro.Tests")]
|
||||
namespace WotBlitzStatisticsPro.Logic
|
||||
{
|
||||
public static class WotBlitzStatisticsLogicInstaller
|
||||
@@ -29,6 +31,11 @@ namespace WotBlitzStatisticsPro.Logic
|
||||
services.AddTransient<AchievementsDictionaryUpdater>();
|
||||
services.AddTransient<VehiclesDictionaryUpdater>();
|
||||
|
||||
RegisterFactoryMethod(services);
|
||||
}
|
||||
|
||||
internal static void RegisterFactoryMethod(IServiceCollection services)
|
||||
{
|
||||
services.AddTransient<DictionariesUpdaterResolver>(serviceProvider => dictionaryType =>
|
||||
{
|
||||
switch (dictionaryType)
|
||||
|
||||
Reference in new issue
Block a user