private MancalaPlayer CreatePlayer(GameInstanceUser gameInstanceUser) { var player = new MancalaPlayer(); player.Board = new int[7] { 4, 4, 4, 4, 4, 4, 0 }; player.User = GameInstanceMapper.Map(gameInstanceUser); return(player); }
public ActionResult <IResponse <object> > Get(Guid id) { var gameInstance = GameInstanceLogic.Get(id); if (gameInstance == null) { return(NotFound(gameInstance)); } var response = new Response <GameInstanceDto>(); response.Data = GameInstanceMapper.Map(gameInstance); return(Ok(response)); }
public ActionResult <IResponse <object> > Get() { var gameInstances = GameInstanceLogic.GetCurrentUserGameInstancesWithoutGameStates(); if (gameInstances == null) { return(new EmptyResult()); } var response = new Response <ICollection <UserGameInstanceStatelessDto> >(); response.Data = GameInstanceMapper.Map(gameInstances); return(Ok(response)); }
public ActionResult <IResponse <object> > GetChat(Guid id) { var gameInstanceMessages = GameInstanceUserMessageLogic.GetViewResults(id); if (gameInstanceMessages == null) { return(NotFound(gameInstanceMessages)); } var response = new Response <ICollection <GameInstanceUserMessageDto> >(); response.Data = GameInstanceMapper.Map(gameInstanceMessages); return(Ok(response)); }
public ActionResult <IResponse <object> > New(CreateGameInstanceDto dto) { var validationResponse = GameInstanceValidator.Validate(dto); if (!validationResponse.IsValid) { return(BadRequest(validationResponse)); } var gameInstanceResponse = GameInstanceLogic.New(dto); var response = ResponseMapper.MapMetadata <GameInstanceDto>(gameInstanceResponse); response.Data = GameInstanceMapper.Map(gameInstanceResponse.Data); return(Ok(response)); }
public ActionResult <IResponse <object> > RefreshCheck(RefreshCheckDto dto) { var gameInstance = GameInstanceLogic.Get(dto.Id); if (gameInstance == null) { return(NotFound(gameInstance)); } var response = new Response <GameInstanceDto>(); if (gameInstance.State.DateCreated <= dto.Date) { return(Ok()); } response.Data = GameInstanceMapper.Map(gameInstance); return(Ok(response)); }
public async Task <ActionResult <IResponse <object> > > PlayAsync(PlayGameInstanceDto dto) { var validationResponse = GameInstanceValidator.Validate(dto); if (!validationResponse.IsValid) { return(BadRequest(validationResponse)); } var gameInstanceResponse = GameInstanceLogic.Play(dto); var response = ResponseMapper.MapMetadata <GameInstanceDto>(gameInstanceResponse); response.Data = GameInstanceMapper.Map(GameInstanceLogic.Get(dto.Id)); if (response.IsValid) { await GameHubContext.Clients.Group(dto.Id.ToString()).SendAsync("Refresh"); } return(Ok(response)); }
public async Task SendMessage(ChatMessageDto dto) { var validationResults = GameInstanceValidator.Validate(dto); if (!validationResults.IsValid) { throw new Exception(string.Join(',', validationResults.Errors)); } var messageToSave = new GameInstanceUserMessage(); messageToSave.Text = dto.Text; messageToSave.UserId = RequestContext.UserId; messageToSave.GameInstanceId = dto.Id; var entity = GameInstanceUserMessageLogic.Save(messageToSave); var responseDto = GameInstanceMapper.Map(entity); responseDto.UserEmail = RequestContext.Email; await Clients.Group(dto.Id.ToString()).SendAsync("ReceiveMessage", responseDto); }
private void Arrange() { var fakeRequestContext = A.Fake <IRequestContext>(); _gameInstanceMapper = new GameInstanceMapper(fakeRequestContext); _gameInstance = new GameInstance { Id = Guid.Parse("d3738777-44b9-4ce8-8bf7-3ce2e985ef52"), GameId = (int)Games.Mancala, DateCreated = Convert.ToDateTime("12-11-2012 12:12:12AM"), IsDeleted = false, Game = new Game { DisplayName = Games.Mancala.ToString(), Id = 1, IsDeleted = false, ReferenceName = Games.Mancala.ToString() } }; var gameInstanceUsers = new List <GameInstanceUser> { new GameInstanceUser { UserId = 398, Role = GameInstanceRoles.Player.ToString() }, new GameInstanceUser { UserId = 66246, Role = GameInstanceRoles.Player.ToString() }, new GameInstanceUser { UserId = 6363, Role = GameInstanceRoles.Spectator.ToString() }, new GameInstanceUser { UserId = 3785633, Role = GameInstanceRoles.Spectator.ToString() } }; _gameInstance.State = new GameInstanceState { DataAsJson = "{\"HasGameBeenSetup\":true,\"GameIsPlayable\":true,\"IsPlayer1Turn\":true,\"Player1\":{\"Board\":[4,4,4,4,4,4,0],\"User\":{\"UserId\":398,\"Role\":\"Player\",\"UserEmail\":null}},\"Player2\":{\"Board\":[4,4,4,4,4,4,0],\"User\":{\"UserId\":66246,\"Role\":\"Player\",\"UserEmail\":null}}}", DateCreated = Convert.ToDateTime("12-12-2012 12:12:12AM"), GameInstanceId = Guid.Parse("d3738777-44b9-4ce8-8bf7-3ce2e985ef52"), Id = 3983 }; _gameInstance.Users = gameInstanceUsers; _gameInstanceUser = new GameInstanceUser { GameInstanceId = Guid.Parse("d3738777-44b9-4ce8-8bf7-3ce2e985ef52"), Id = 15, Role = GameInstanceRoles.Player.ToString(), UserId = 938, User = new User { Id = 938, Email = "*****@*****.**", IsDeleted = true, Password = "******" } }; }