public async Task TotalSubstitlesShouldReturnCorrectResult() { // Arrange TestStartUp startUp = new TestStartUp(); var db = startUp.GetDbContext(); PopulateDb(db); var subtitlesService = new SubtitlesService(db); // Act var result = await subtitlesService.TotalAsync(); // Assert Assert.True(result == 3); }
public async Task GetSubtitlesById() { // Arrange TestStartUp startUp = new TestStartUp(); TestStartUp.InitializeMapper(); var db = startUp.GetDbContext(); this.PopulateDb(db); var subtitlesService = new SubtitlesService(db); // Act var result = await subtitlesService.ById(1); // Assert Assert.True(result.Id == 1); }
static void GetSubtitles(SubtitlesService subtitlesService) { var subtitlesProvider = MoviesAPIServiceFactories.SubtitlesProviderFactory.GetService(subtitlesService); var result = subtitlesProvider.GetAvailableSubtitlesAsync("tt4733624", SubtitlesLanguage.French).Result; if (result == null) { Console.WriteLine("No subtitles found"); } else { Console.WriteLine($"subtitles found:{result.Language} - {string.Join(',', result.SubtitlesSourceUrls)}"); var subtitles = subtitlesProvider.GetSubtitles(result.SubtitlesSourceUrls[0]).ToArray(); var length = subtitles.Length > 10 ? 10 : subtitles.Count(); for (int i = 0; i < length; i++) { Console.WriteLine($"{subtitles[i].StartTime} - {subtitles[i].EndTime} : {subtitles[i].Text}"); } } }
public async Task TopDownloadSubstitlesShouldReturnCorrectResultsWithOrder() { // Arrange TestStartUp startUp = new TestStartUp(); TestStartUp.InitializeMapper(); var db = startUp.GetDbContext(); PopulateDb(db); var subtitlesService = new SubtitlesService(db); // Act var result = await subtitlesService.Top10DownloadSubs(); // Assert result .Should() .Match(r => r.ElementAt(0).Id == 3 && r.ElementAt(1).Id == 2 && r.ElementAt(2).Id == 1) .And .HaveCount(3); }
public async Task FindAsyncShouldReturnCorrectResultsWithFilterAndOrder() { // Arrange TestStartUp startUp = new TestStartUp(); TestStartUp.InitializeMapper(); var db = startUp.GetDbContext(); PopulateDb(db); var subtitlesService = new SubtitlesService(db); // Act var result = await subtitlesService.FindeAsync("s", LanguageType.Bulgarian); // Assert result .Should() .Match(r => r.ElementAt(0).Id == 2 && r.ElementAt(1).Id == 1) .And .HaveCount(2); }
public SubtitlesStorage(SubtitlesService service) { this.service = service; }