コード例 #1
0
        public async Task GetTVShowDetailsAsync_VerifySuccessReturnsMovieDetails()
        {
            var httpclient         = new HttpClient();
            var TMDBapi            = new TMDBapi(httpclient);
            var tmdb_id            = 1408;
            var expectedGenreCount = 3;
            var GregoryHouseExists = false;
            var expectedName       = "Gregory House";

            var service = new DetailsService(DbAccess, TMDBapi);

            var TVShowDetails = await service.GetTVSHowDetailsAsync(tmdb_id);

            Assert.IsNotNull(TVShowDetails);
            Assert.AreEqual(TVShowDetails.genres.ToList().Count, expectedGenreCount);
            Assert.IsNotNull(TVShowDetails.credits);
            Assert.IsNotNull(TVShowDetails.credits.cast);
            Assert.IsTrue(TVShowDetails.credits.cast.ToList().Count > 0);
            foreach (var person in TVShowDetails.credits.cast)
            {
                if (person.character == expectedName)
                {
                    GregoryHouseExists = true;
                    break;
                }
            }
            Assert.IsTrue(GregoryHouseExists);
        }
コード例 #2
0
        public async Task FetchMovieDetails_VerifySuccessfulFetchDetails()
        {
            var httpclient         = new HttpClient();
            var tmdbapi            = new TMDBapi(httpclient);
            var tmdb_id            = 299534;
            var expectedGenreCount = 3;
            var TonyStarkExists    = false;
            var expectedName       = "Tony Stark / Iron Man";

            var moviedetails = await tmdbapi.FetchMovieDetailsAsync(tmdb_id);

            Assert.IsNotNull(moviedetails);
            Assert.AreEqual(moviedetails.genres.ToList().Count, expectedGenreCount);
            Assert.IsNotNull(moviedetails.credits);
            Assert.IsNotNull(moviedetails.credits.cast);
            Assert.IsTrue(moviedetails.credits.cast.ToList().Count > 0);
            foreach (var person in moviedetails.credits.cast)
            {
                if (person.character == expectedName)
                {
                    TonyStarkExists = true;
                    break;
                }
            }
            Assert.IsTrue(TonyStarkExists);
        }
コード例 #3
0
        public async Task FetchTVShows_VerifyEmptyTitleReturnsNull()
        {
            var httpclient = new HttpClient();
            var tmdbapi    = new TMDBapi(httpclient);
            var title      = "";

            var searchTVShows = await tmdbapi.FetchTVShowsAsync(title);

            Assert.IsTrue(searchTVShows == null);
        }
コード例 #4
0
        public async Task FetchMovieDetails_VerifyNegativeTMDBIDReturnsNull()
        {
            var httpclient = new HttpClient();
            var tmdbapi    = new TMDBapi(httpclient);
            var tmdb_id    = -1;

            var moviedetails = await tmdbapi.FetchMovieDetailsAsync(tmdb_id);

            Assert.IsTrue(moviedetails == null);
        }
コード例 #5
0
        public async Task FFetchTVShowDetails_VerifyZeroTMDBIDReturnsNull()
        {
            var httpclient = new HttpClient();
            var tmdbapi    = new TMDBapi(httpclient);
            var tmdb_id    = 0;

            var TVShowDetails = await tmdbapi.FetchTVShowDetailsAsync(tmdb_id);

            Assert.IsTrue(TVShowDetails == null);
        }
コード例 #6
0
        public async Task FetchTVShowsAsync_VerifyEmptyTitleReturnsNull()
        {
            var httpclient = new HttpClient();
            var tmdbapi    = new TMDBapi(httpclient);
            var fis        = new FetchImportService(tmdbapi);
            var title      = "";

            var searchmovies = await fis.FetchTVShowsAsync(title);

            Assert.IsTrue(searchmovies == null);
        }
コード例 #7
0
        public async Task FetchMovieAsync_VerifyValidTitleReturnsObject()
        {
            var httpclient = new HttpClient();
            var tmdbapi    = new TMDBapi(httpclient);
            var fis        = new FetchImportService(tmdbapi);
            var title      = "Superman";

            var searchmovies = await fis.FetchMovieAsync(title);

            Assert.IsTrue(searchmovies != null);
            Assert.IsTrue(searchmovies.total_results > 0);
        }
コード例 #8
0
        public async Task ImportMovieAsync_VerifyNoTitleReturnsEmptyMovieObject()
        {
            var httpclient = new HttpClient();
            var tmdbapi    = new TMDBapi(httpclient);
            var fis        = new FetchImportService(tmdbapi);
            var tmdb_id    = 299534;

            var Movie = await fis.ImportMovieAsync(tmdb_id);

            Assert.IsNotNull(Movie);
            Assert.IsTrue(string.IsNullOrEmpty(Movie.Title));
            Assert.IsTrue(Movie.TMDB_ID == 0);
        }
コード例 #9
0
        public async Task FetchMovie_VerifySuccessfulFetch()
        {
            var httpclient          = new HttpClient();
            var tmdbapi             = new TMDBapi(httpclient);
            var title               = "Avengers Endg";
            var expectedTMDB_ID     = 299534;
            var expectedResultCount = 1;

            var searchmovies = await tmdbapi.FetchMovieAsync(title);

            Assert.IsNotNull(searchmovies);
            Assert.AreEqual(searchmovies.total_results, expectedResultCount);
            Assert.AreEqual(searchmovies.results.Count(), expectedResultCount);
            Assert.AreEqual(searchmovies.results.FirstOrDefault().id, expectedTMDB_ID);
        }
コード例 #10
0
        public async Task FetchTVShows_VerifySuccessfulFetch()
        {
            var httpclient          = new HttpClient();
            var tmdbapi             = new TMDBapi(httpclient);
            var title               = "House M.D.";
            var expectedTMDB_ID     = 1408;
            var expectedResultCount = 1;

            var searchTVShows = await tmdbapi.FetchTVShowsAsync(title);

            Assert.IsNotNull(searchTVShows);
            Assert.AreEqual(searchTVShows.total_results, expectedResultCount);
            Assert.AreEqual(searchTVShows.results.ToList().Count, expectedResultCount);
            Assert.AreEqual(searchTVShows.results.ToList().FirstOrDefault().id, expectedTMDB_ID);
        }
コード例 #11
0
        public async Task ImportMovieAsync_VerifySuccessfulImport()
        {
            var httpclient         = new HttpClient();
            var tmdbapi            = new TMDBapi(httpclient);
            var fis                = new FetchImportService(tmdbapi);
            var tmdb_id            = 299534;
            var expectedGenreCount = 3;

            var Movie = await fis.ImportMovieAsync(tmdb_id);

            Assert.IsNotNull(Movie);
            Assert.IsTrue(!string.IsNullOrEmpty(Movie.Title));
            Assert.IsTrue(Movie.TMDB_ID == tmdb_id);
            Assert.IsNotNull(Movie.Genres);
            Assert.AreEqual(Movie.Genres.Count, expectedGenreCount);
        }
コード例 #12
0
        public async Task FetchTVShowDetails_VerifySuccessfulFetchDetails()
        {
            var    httpclient         = new HttpClient();
            var    tmdbapi            = new TMDBapi(httpclient);
            var    tmdb_id            = 1408;
            var    expectedGenreCount = 3;
            var    GregoryHouseExists = false;
            var    expectedName       = "Gregory House";
            Rating expectedRating     = Rating.TV_14;
            Rating?rating             = null;

            var TVShowDetails = await tmdbapi.FetchTVShowDetailsAsync(tmdb_id);

            Assert.IsNotNull(TVShowDetails);
            Assert.AreEqual(TVShowDetails.genres.ToList().Count, expectedGenreCount);
            Assert.IsNotNull(TVShowDetails.credits);
            Assert.IsNotNull(TVShowDetails.credits.cast);
            Assert.IsTrue(TVShowDetails.credits.cast.ToList().Count > 0);
            foreach (var person in TVShowDetails.credits.cast)
            {
                if (person.character == expectedName)
                {
                    GregoryHouseExists = true;
                    break;
                }
            }
            Assert.IsTrue(GregoryHouseExists);
            Assert.IsNotNull(TVShowDetails.content_ratings);
            Assert.IsNotNull(TVShowDetails.content_ratings.results);
            Assert.IsTrue(TVShowDetails.content_ratings.results.ToList().Count > 0);
            foreach (var country in TVShowDetails.content_ratings.results)
            {
                if (country.iso_3166_1 == "US")
                {
                    rating = Movie.RatingFromString(country.rating);
                    break;
                }
            }
            Assert.IsNotNull(rating);
            Assert.AreEqual(rating, expectedRating);
        }