public SportsRuApiFixture() { var logger = Mock.Of <ILogger <SportsRuApiService> >(); var sportsRuApiSettings = new SportsRuApiSettings("https://www.sports.ru", "https://stat.sports.ru"); SportsRuApiService = new SportsRuApiService(sportsRuApiSettings, logger); }
public async Task GetHotContent_ErrorResponse() { var sportsRuApiSettings = new SportsRuApiSettings("https://www.sports.ru", "https://anyvalid.url"); var sportsRuApiService = new SportsRuApiService(sportsRuApiSettings, Mock.Of <ILogger <SportsRuApiService> >()); var hotContentResponse = await sportsRuApiService.GetHotContentAsync().ConfigureAwait(false); Assert.False(hotContentResponse.IsSuccess); Assert.Equal(SportsRuApiResources.Error_Unknown, hotContentResponse.ErrorMessage); }
public SportsRuApiService(SportsRuApiSettings sportsRuApiSettings, ILogger <SportsRuApiService> logger) { _httpClient = new HttpClient { BaseAddress = sportsRuApiSettings.SportsRuBaseAddress }; _statHttpClient = new HttpClient() { BaseAddress = sportsRuApiSettings.SportsRuStatBaseAddress }; _logger = logger; }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddControllers(); string connectionString = Configuration.GetConnectionString("database"); services.AddDbContext <SportsContext>(builder => builder.ConfigureSportsContextOptions(connectionString)); services.AddScoped <INewsArticleDataService, NewsArticleDataService>(); services.AddScoped <IAliceService, AliceService>(); services.AddScoped <ISyncService, SyncService>(); services.AddSingleton <ISportsRuApiService, SportsRuApiService>(); services.AddScoped <INewsService, NewsService>(); services.AddScoped <INewsArticleCommentService, NewsArticleCommentService>(); services.AddScoped <IScenesProvider, ScenesProvider>(); services.AddScoped <WelcomeScene>(); services.AddScoped <LatestNewsScene>(); services.AddScoped <MainNewsScene>(); services.AddScoped <BestCommentsScene>(); services.AddScoped <HelpScene>(); var sportsSettingsSection = Configuration.GetSection("SportsSettings"); SportsSettings sportsSettings = new(); sportsSettingsSection.Bind(sportsSettings); services.AddSingleton(sportsSettings); var sportsRuApiSettingsSection = Configuration.GetSection("SportsRuApiSettings"); var sportsRuApiSettings = new SportsRuApiSettings(); sportsRuApiSettingsSection.Bind(sportsRuApiSettings); services.AddSingleton(sportsRuApiSettings); services.AddHostedService <SyncNewsWorker>(); services.AddHostedService <SyncNewsCommentsWorker>(); services.AddHostedService <CleanWorker>(); services.AddApplicationInsightsTelemetry(); }
public SportsFixture() { var builder = new DbContextOptionsBuilder(); builder .UseLazyLoadingProxies() .UseSqlite("Data Source=sports.db"); SportsContext = new SportsContext(builder.Options); SportsContext.Database.EnsureDeleted(); SportsContext.Database.EnsureCreated(); var sportsRuLogger = Mock.Of <ILogger <SportsRuApiService> >(); var sportsRuApiSettings = new SportsRuApiSettings("https://www.sports.ru", "https://stat.sports.ru"); ISportsRuApiService sportsRuApiService = new SportsRuApiService(sportsRuApiSettings, sportsRuLogger); var newsArticleDataService = new NewsArticleDataService(SportsContext); NewsService = new NewsService(SportsContext, newsArticleDataService); var syncServiceLogger = Mock.Of <ILogger <SyncService> >(); SyncService = new SyncService(SportsContext, sportsRuApiService, newsArticleDataService, syncServiceLogger); NewsArticleCommentService = new NewsArticleCommentService(SportsContext); }