예제 #1
0
        public async Task GivenMovieIdentifiers_Create_ReturnsContestantRequests()
        {
            // Arrange
            var items   = GetMovieIdentifiersFromFile();
            var factory = new OmdbApiMovieContestantRequestFactory();

            // Act
            var contestants = await factory.Create(items);

            // Assert
            contestants.Should().NotBeNullOrEmpty();
            await FileContestantRequestFactory.WriteMovieContestantsToFile(contestants);
        }
예제 #2
0
        public async Task GivenMovieContestantsAndUrl_ChangePosterUrlsAndSave()
        {
            var          contestants = FileContestantRequestFactory.GetContestants();
            const string baseUri     = @"http://moviewar.azurewebsites.net/Posters/";

            foreach (var c in contestants)
            {
                try
                {
                    var uri      = c.Definition["Poster"];
                    var filename = GetFileName(uri);
                    var newUri   = baseUri + filename;
                    c.Definition["Poster"] = newUri;
                }
                catch (Exception ex)
                {
                    throw new Exception($"Failed to set poster for {c.Definition["Title"]} ({c.Definition["Year"]})", ex);
                }
            }

            await FileContestantRequestFactory.WriteMovieContestantsToFile(contestants);
        }