예제 #1
0
        public void TestMethod9()
        {
            var IGDBService = new IGDBService();
            var result      = IGDBService.GetVideosByGameId(19560);// .GetGameByName("Lego");

            Assert.AreNotEqual(null, result);
        }
예제 #2
0
        public void TestMethod7()
        {
            var IGDBService = new IGDBService();
            var result      = IGDBService.GetGameByName("Lego");

            Assert.AreNotEqual(null, result);
        }
예제 #3
0
        public void TestMethod6()
        {
            var IGDBService = new IGDBService();
            var result      = IGDBService.GetPlatformByName("Nintendo");

            Assert.AreNotEqual(null, result);
        }
        public async Task <ActionResult> SearchGamesToAddAsync(string searchFilter, int pageNumber)
        {
            var igdbService = new IGDBService();
            var games       = await igdbService.GetGameToAddSearchResultsAsync(searchFilter, pageNumber);

            return(PartialView("ListOfGamesToAdd", games));
        }
예제 #5
0
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(Content("No game ID has been provided."));
            }

            var igdbService = new IGDBService();
            var game        = await igdbService.GetGameDetailsAsync((int)id);

            return(View("GameDetails", new GameDetailsViewModel(game)));
        }
        public async Task <ActionResult> AddGameToDb(int id)
        {
            var igdbService = new IGDBService();
            var game        = await igdbService.GetGameDetailsAsync(id);

            var gameApiLink = new GameApiLink
            {
                Name = game.Name, GameIdentifier = game.Id, GenreIds = game.GenreIds
            };


            db.Games.Add(gameApiLink);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
예제 #7
0
        public async Task <ActionResult> Index()
        {
            var gameService = new DbService();
            var igdbService = new IGDBService();

            //Get list of ids of top rated games in db
            var topRatedGameIds = await gameService.GetTopGamesAsync();

            var topRatedGames = await igdbService.GetGamesIdAndPicAsync(topRatedGameIds);

            foreach (var game in topRatedGames)
            {
                game.AverageRating = gameService.GetAverageRating(game.Id);
            }


            var allGameIdsInDb = gameService.GetGamesInDatabase().ToArray();

            Random        rnd              = new Random();
            HashSet <int> numbers          = new HashSet <int>();
            var           discoverGamesIds = new List <int>();

            while (numbers.Count < 8)
            {
                numbers.Add(rnd.Next(1, allGameIdsInDb.Length));
            }

            foreach (var num in numbers)
            {
                discoverGamesIds.Add(allGameIdsInDb[num]);
            }

            var discoverGameItems = await igdbService.GetGamesIdAndPicAsync(discoverGamesIds);

            var viewModel = new HomeIndexViewModel
            {
                TopRatedGames = topRatedGames.OrderByDescending(g => g.AverageRating)
                                .Take(6),
                DiscoverGames = discoverGameItems
            };

            return(View("Index", viewModel));
        }
예제 #8
0
        public async Task <ActionResult> SearchGameItemAsync(string searchFilter, string searchType, int pageNumber)
        {
            var gameService = new DbService();
            //get every id in db table
            //format to query api
            var allGamesInDb = gameService.GetGamesInDatabase();

            var igdbService = new IGDBService();
            //returns list of games which match criteria in params
            var gameList = await igdbService.GetSearchResultsAsync(string.Join(", ", allGamesInDb), searchFilter, searchType);

            var gameSearchResults = new List <GameItemViewModel>();

            foreach (var game in gameList)
            {
                game.AverageRating = gameService.GetAverageRating(game.Id);
                gameSearchResults.Add(new GameItemViewModel(game, _context));
            }

            return(PartialView("GameItem", gameSearchResults.OrderByDescending(g => g.Game.AverageRating)));
        }