public async Task <string> DownloadImage(DateTime date, bool fixDate = true) { date = fixDate ? timeService.FixDate(date, "Tokyo Standard Time") : date; List <string> partialImages = new List <string>(); for (int i = 0; i < Quality; i++) { for (int j = 0; j < Quality; j++) { try { string path = await downloadService.Get(GetUrl(date, i, j), ($"{configService.BaseFolder}{i}_{j}.png")); partialImages.Add(path); } catch (Exception e) { throw e; } } } return(imageService.Merge(Quality, Quality, partialImages.ToArray())); }
public void TestFixDate() { IServiceCollection services = new ServiceCollection(); services.AddScoped <ISateliteTimeService, SateliteTimeService>(); ServiceProvider.Init(services); ISateliteTimeService sateliteService = ServiceProvider.Locator.GetService <ISateliteTimeService>(); DateTime now = DateTime.Now; DateTime fixedDate = sateliteService.FixDate(now, "A"); Assert.IsTrue(fixedDate.Minute % 10 == 0); }