public async Task <IEnumerable <Tuple <URN, URN> > > GetSportEventsForTournamentAsync(URN id, CultureInfo culture, ISportEventCI requester) { RecordCall("GetSportEventsForTournamentAsync"); var filePath = GetFile(TourScheduleXml, culture); var restDeserializer = new Deserializer <tournamentSchedule>(); var mapper = new TournamentScheduleMapperFactory(); var stream = FileHelper.OpenFile(filePath); var result = mapper.CreateMapper(restDeserializer.Deserialize(stream)).Map(); await ExecuteDelayAsync(id, culture).ConfigureAwait(false); if (result != null) { await LogSaveDtoAsync(URN.Parse($"sr:sport_events:{result.Items.Count()}"), result, culture, DtoType.SportEventSummaryList, requester).ConfigureAwait(false); var urns = new List <Tuple <URN, URN> >(); foreach (var item in result.Items) { urns.Add(new Tuple <URN, URN>(item.Id, item.SportId)); } return(urns.AsEnumerable()); } return(null); }
public static void Init(TestContext context) { var deserializer = new Deserializer <tournamentSchedule>(); var dataFetcher = new TestDataFetcher(); var mapperFactory = new TournamentScheduleMapperFactory(); var dataProvider = new DataProvider <tournamentSchedule, EntityList <SportEventSummaryDTO> >( TestData.RestXmlPath + InputXml, dataFetcher, deserializer, mapperFactory); _entity = dataProvider.GetDataAsync("", "en").Result; }
private void InitSportEventCache() { var testDataFetcher = new TestDataFetcher(); _eventCache = new MemoryCache("test"); var fixtureDeserializer = new Deserializer <fixturesEndpoint>(); var fixtureMapperFactory = new FixtureMapperFactory(); var fixtureProvider = new DataProvider <fixturesEndpoint, FixtureDTO>( DirPath + FixtureXml, testDataFetcher, fixtureDeserializer, fixtureMapperFactory); var dateDeserializer = new Deserializer <scheduleEndpoint>(); var dateMapperFactory = new SportEventsScheduleMapperFactory(); var dateProvider = new DateScheduleProvider( DirPath + ScheduleXml, DirPath + ScheduleXml, testDataFetcher, dateDeserializer, dateMapperFactory); // tournament schedule provider var tourDeserializer = new Deserializer <tournamentScheduleEndpoint>(); var tourMapperFactory = new TournamentScheduleMapperFactory(); var tourProvider = new DataProvider <tournamentScheduleEndpoint, EntityList <MatchSummaryDTO> >( DirPath + TourXml, testDataFetcher, tourDeserializer, tourMapperFactory); var detailsDeserializer = new Deserializer <matchSummaryEndpoint>(); var detailsMapperFactory = new SportEventDetailsMapperFactory(); var eventDetailsProvider = new DataProvider <matchSummaryEndpoint, SportEventDetailsDTO>( DirPath + DetailsXml, testDataFetcher, detailsDeserializer, detailsMapperFactory); var timer = new TestTimer(false); _sportEventCacheItemFactory = new SportEventCacheItemFactory(fixtureProvider, eventDetailsProvider, DefaultCulture); _sportEventCache = new SportEventCache(_eventCache, dateProvider, tourProvider, _sportEventCacheItemFactory, timer, Cultures); }