Exemplo n.º 1
0
        public void RemovePlayedGame()
        {
            var game = new Game {
                Id = 1, Name = "Game 1"
            };
            var games = new List <Game> {
                game
            };
            var playedGame     = new DateTime(2016, 1, 1);
            var gamePlayedDate = new GamePlayedDate {
                GameId = game.Id, PlayedDate = playedGame
            };
            var gamePlayedDates = new List <GamePlayedDate> {
                gamePlayedDate
            };

            var context = _fixture.Context
                          .GamesContain(games)
                          .GamePlayedDatesContain(gamePlayedDates);
            var gameRepository = new GameRepository(context);

            gameRepository.RemovePlayedDate(game.Id, playedGame);

            var result = gameRepository.GetAllPlayedDatesBy(game.Id);

            Assert.False(result.Any());
        }
Exemplo n.º 2
0
 public PlayedDateViewModel Map(GamePlayedDate playedDate)
 {
     return(new PlayedDateViewModel
     {
         Id = playedDate.Id,
         PlayedDate = playedDate.PlayedDate,
         FormattedPlayedDate = playedDate.PlayedDate.ToString("M/d/yyyy")
     });
 }
Exemplo n.º 3
0
        public void MapGamePlayedDateToPlayedDateViewModel()
        {
            var playedDate = new GamePlayedDate
            {
                Id         = 2,
                PlayedDate = new DateTime(2016, 1, 1)
            };
            var mapper    = new PlayedDateMapper();
            var viewModel = mapper.Map(playedDate);

            Assert.Equal(playedDate.Id, viewModel.Id);
            Assert.Equal("1/1/2016", viewModel.FormattedPlayedDate);
            Assert.Equal(new DateTime(2016, 1, 1), viewModel.PlayedDate);
        }
Exemplo n.º 4
0
        public void GetAllPlayedDatesByGameOrderDescending()
        {
            var games = new List <Game>
            {
                new Game {
                    Id = 1, Name = "Game 1"
                },
                new Game {
                    Id = 2, Name = "Game 2"
                }
            };

            var gamePlayed1 = new GamePlayedDate {
                PlayedDate = new DateTime(2016, 1, 1), GameId = 1
            };
            var gamePlayed2 = new GamePlayedDate {
                PlayedDate = new DateTime(2016, 2, 2), GameId = 1
            };
            var gamePlayedDates = new List <GamePlayedDate>
            {
                gamePlayed1,
                gamePlayed2,
                new GamePlayedDate {
                    PlayedDate = new DateTime(2016, 1, 1), GameId = 2
                },
                new GamePlayedDate {
                    PlayedDate = new DateTime(2016, 3, 3), GameId = 2
                }
            };

            var context = _fixture.Context
                          .GamesContain(games)
                          .GamePlayedDatesContain(gamePlayedDates);
            var gameRepository = new GameRepository(context);

            var resultGame1 = gameRepository.GetAllPlayedDatesBy(1)
                              .ToList();
            var resultGame2 = gameRepository.GetAllPlayedDatesBy(2);

            Assert.Equal(2, resultGame1.Count());
            Assert.Equal(2, resultGame2.Count());
            Assert.Equal(gamePlayed2, resultGame1.First());
            Assert.Equal(gamePlayed1, resultGame1.Last());
        }
Exemplo n.º 5
0
        public void AddPlayedDate(int gameId, DateTime playedDate)
        {
            if (GetBy(gameId) == null)
            {
                throw new ArgumentException("Game does not exist");
            }

            if (GetGamePlayedDateBy(gameId, playedDate) != null)
            {
                throw new ArgumentException("This date has already been set for this game.");
            }

            var gamePlayedDate = new GamePlayedDate {
                GameId = gameId, PlayedDate = playedDate
            };

            _context.GamePlayedDates.Add(gamePlayedDate);
            _context.SaveChanges();
        }
Exemplo n.º 6
0
 public void VerifyMapCalledWith(GamePlayedDate gamePlayedDate)
 {
     _mock.Verify(m => m.Map(gamePlayedDate));
 }
Exemplo n.º 7
0
 public PlayedDateViewModel Map(GamePlayedDate gamePlayedDate)
 {
     return(_mock.Object.Map(gamePlayedDate));
 }
Exemplo n.º 8
0
        public void ContextBuildsAViewModelWithEditedGame()
        {
            var category = new Category {
                Id = 1, Description = "Category 1"
            };
            var categories = new List <Category> {
                category
            };
            var item = new SelectListItem {
                Value = "1", Text = "Category 1"
            };
            var categorySelectListItems = new List <SelectListItem> {
                item
            };
            var categoryViewModel = new CategoryViewModel {
                Id = 1, Description = "Category 1"
            };
            var electedCategories = new List <CategoryViewModel> {
                categoryViewModel
            };
            var playedDateViewModel = new PlayedDateViewModel {
                Id = 1, FormattedPlayedDate = "1/1/2016"
            };
            var playedDates = new List <PlayedDateViewModel> {
                playedDateViewModel
            };
            var game = new Game {
                Id = 2, Name = "Game 2", Description = "This is game 2"
            };
            var gamePlayedDate = new GamePlayedDate {
                Id = 1, GameId = game.Id, Game = game, PlayedDate = new DateTime(2016, 1, 1)
            };
            var gamePlayedDates = new List <GamePlayedDate> {
                gamePlayedDate
            };
            var gameViewModel = new GameViewModel
            {
                Id                = 2,
                Name              = "Game 2",
                Description       = "This is game 2",
                Categories        = categorySelectListItems,
                ElectedCategories = electedCategories,
                PlayedDates       = playedDates
            };
            var mockGameRepository = new MockGameRepository()
                                     .StubGetAllCategoriesByToReturn(categories)
                                     .StubGetAllPlayedDatesByToReturn(gamePlayedDates)
                                     .StubGetByToReturn(game);
            var mockCategoryRepository = new MockCategoryRepository()
                                         .StubGetAllToReturn(categories);
            var mockGameMapper = new MockGameMapper()
                                 .StubMapWithCategoriesToReturn(gameViewModel);
            var mockCategoryMapper = new MockCategoryMapper()
                                     .StubMapToReturn(categoryViewModel)
                                     .StubSelectMapToReturn(item);
            var mockPlayedDateMapper = new MockPlayedDateMapper()
                                       .StubMapToReturn(playedDateViewModel);
            var gameContext = BuildGameContext(mockGameRepository, mockCategoryRepository, mockGameMapper, mockCategoryMapper, mockPlayedDateMapper);

            var viewModel = gameContext.BuildViewModel(game.Id);

            Assert.NotNull(viewModel);
            Assert.Equal(1, viewModel.Categories.Count());
            Assert.Equal(1, viewModel.ElectedCategories.Count());
            Assert.Equal(1, viewModel.PlayedDates.Count());
            mockGameRepository.VerifyGetByCalledWith(game.Id);
            mockGameRepository.VerifyGetAllCategoriesByCalledWith(game.Id);
            mockGameRepository.VerifyGetAllPlayedDatesByCalledWith(game.Id);
            mockCategoryRepository.VerifyGetAllCalled();
            mockGameMapper.VerifyMapCalledWith(game, categorySelectListItems, electedCategories, playedDates);
            mockCategoryMapper.VerifySelectMapCalledWith(category);
            mockCategoryMapper.VerifyMapCalledWith(category);
            mockPlayedDateMapper.VerifyMapCalledWith(gamePlayedDate);
        }