Exemplo n.º 1
0
        public IActionResult Post([FromBody] TeamModelIn teamIn)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Team team = teamIn.TransformToEntity();
                    team = teamService.CreateTeam(team);
                    TeamModelOut modelOut = new TeamModelOut(team);

                    return(CreatedAtRoute("Get", new { id = team.TeamId }, modelOut));
                }
                else
                {
                    return(BadRequest(ModelState));
                }
            }
            catch (NotUniqueException ex)
            {
                return(BadRequest(ex.Message));
            }
            catch (Exception ex)
            {
                return(BadRequest("Ha ocurrido un error" + ex.Message));
            }
        }
Exemplo n.º 2
0
 public IActionResult GetUserFavouritTeams(int id)
 {
     try
     {
         List <Team> teams = userService.GetUserFavouriteTeams(id);
         if (teams.Count > 0)
         {
             List <TeamModelOut> teamsOut = new List <TeamModelOut>();
             foreach (Team team in teams)
             {
                 TeamModelOut model = new TeamModelOut(team);
                 teamsOut.Add(model);
             }
             return(Ok(teamsOut));
         }
         else
         {
             return(Ok("El usuario no sigue a ningun equipo"));
         }
     }
     catch (ArgumentException ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Exemplo n.º 3
0
        private TeamModelOut CreateModelOut(TeamDto stored)
        {
            TeamModelOut built = new TeamModelOut()
            {
                Id        = stored.id,
                Name      = stored.name,
                SportName = stored.sportName,
                Photo     = Convert.ToBase64String(images.ReadImage(stored.photo))
            };

            return(built);
        }
Exemplo n.º 4
0
        private TeamModelOut BuildTeamModelOut(TeamDto toReturn)
        {
            TeamModelOut output = new TeamModelOut()
            {
                Id        = toReturn.id,
                SportName = toReturn.sportName,
                Name      = toReturn.name,
                Photo     = Convert.ToBase64String(images.ReadImage(toReturn.photo))
            };

            return(output);
        }
Exemplo n.º 5
0
        public IActionResult Get(int id)
        {
            Team team = teamService.GetTeamById(id);

            if (team != null)
            {
                TeamModelOut modelOut = new TeamModelOut(team);
                return(Ok(modelOut));
            }
            else
            {
                return(BadRequest("No existe el equipo buscado"));
            }
        }
Exemplo n.º 6
0
        private IActionResult TryAddTeam(TeamModelIn team)
        {
            string imgData = team.Photo;

            team.Photo = team.Name + "_" + team.SportName + IMG_EXTENSION;

            TeamDto dto   = BuildTransferObject(team);
            TeamDto added = teamService.AddTeam(dto);

            //if team could be added without exception thrown, then save its image.
            images.SaveImage(team.Photo, imgData);

            TeamModelOut modelOut = BuildTeamModelOut(added);

            return(CreatedAtRoute("GetTeamById", new { id = added.id }, modelOut));
        }
Exemplo n.º 7
0
        public IActionResult Get(int id)
        {
            IActionResult result;

            try
            {
                SetSession();
                TeamDto      fetched = teamService.GetTeam(id);
                TeamModelOut output  = BuildTeamModelOut(fetched);
                result = Ok(output);
            }
            catch (ServiceException e)
            {
                result = errors.GenerateError(e);
            }

            return(result);
        }
Exemplo n.º 8
0
 public IActionResult GetAllTeamsInSport(int sportId)
 {
     try
     {
         IEnumerable <Team>  teams      = sportService.GetAllTeamsInSport(sportId);
         List <TeamModelOut> modelTeams = new List <TeamModelOut>();
         foreach (Team team in teams)
         {
             TeamModelOut model = new TeamModelOut(team);
             modelTeams.Add(model);
         }
         return(Ok(modelTeams));
     }
     catch (ArgumentException ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Exemplo n.º 9
0
        private IActionResult TryPut(int teamId, TeamModelIn team)
        {
            string imgData = team.Photo;

            team.Id = teamId;

            TeamDto dto = BuildTransferObject(team);

            dto.photo = team.Name + "_" + team.SportName + IMG_EXTENSION;

            TeamDto modified = teamService.Modify(dto);

            //if team could be added without exception thrown, then save its image.
            images.SaveImage(team.Photo, imgData);

            TeamModelOut output = BuildTeamModelOut(modified);

            return(Ok(output));
        }
Exemplo n.º 10
0
        public IActionResult Get()
        {
            IEnumerable <Team> teams = teamService.GetAllTeams();

            if (teams.Count() > 0)
            {
                List <TeamModelOut> teamsModel = new List <TeamModelOut>();
                foreach (Team team in teams)
                {
                    TeamModelOut modelOut = new TeamModelOut(team);
                    teamsModel.Add(modelOut);
                }
                return(Ok(teamsModel));
            }
            else
            {
                return(Ok("No existen equipos"));
            }
        }
        public void GetTeamByIdTest()
        {
            //Arrange.
            teamsService.Setup(r => r.GetTeam(2)).Returns(team);

            //Act.
            IActionResult  result     = controller.Get(2);
            OkObjectResult okResult   = result as OkObjectResult;
            TeamModelOut   resultTeam = okResult.Value as TeamModelOut;

            //Assert.
            teamsService.Verify(r => r.GetTeam(2), Times.Once);
            Assert.IsNotNull(okResult);
            Assert.IsNotNull(okResult.Value);
            Assert.AreEqual(200, okResult.StatusCode);
            Assert.AreEqual(resultTeam.Name, team.name);
            Assert.AreEqual(resultTeam.SportName, team.sportName);
            Assert.AreEqual(resultTeam.Photo, team.photo);
        }
        public void CreateValidTeamTest()
        {
            //Arrange.
            TeamModelIn input = CreateTeamModelIn();

            teamsService.Setup(r => r.AddTeam(It.IsAny <TeamDto>())).Returns(team);

            //Act.
            IActionResult        result        = controller.Post(input);
            CreatedAtRouteResult createdResult = result as CreatedAtRouteResult;
            TeamModelOut         modelOut      = createdResult.Value as TeamModelOut;

            //Assert
            teamsService.Verify(r => r.AddTeam(It.IsAny <TeamDto>()), Times.Once);
            Assert.IsNotNull(createdResult);
            Assert.AreEqual("GetTeamById", createdResult.RouteName);
            Assert.AreEqual(201, createdResult.StatusCode);
            Assert.AreEqual(input.Name, modelOut.Name);
        }
        public void PutTest()
        {
            //Arrange.
            TeamModelIn input = CreateTeamModelIn();

            teamsService.Setup(r => r.Modify(It.IsAny <TeamDto>())).Returns(team);


            //Act.
            IActionResult  result   = controller.Put(2, input);
            OkObjectResult okResult = result as OkObjectResult;
            TeamModelOut   modified = okResult.Value as TeamModelOut;

            //Assert.
            teamsService.Verify(r => r.Modify(It.IsAny <TeamDto>()), Times.Once);
            teamsService.Verify(r => r.AddTeam(It.IsAny <TeamDto>()), Times.Never);
            Assert.IsNotNull(result);
            Assert.IsNotNull(okResult);
            Assert.AreEqual(200, okResult.StatusCode);
        }
        public void PutAddTest()
        {
            //Arrange.
            Exception internalEx = new TeamNotFoundException();

            teamsService.Setup(r => r.Modify(It.IsAny <TeamDto>())).Throws(new ServiceException(internalEx.Message, ErrorType.ENTITY_NOT_FOUND));
            teamsService.Setup(r => r.AddTeam(It.IsAny <TeamDto>())).Returns(team);
            TeamModelIn input = CreateTeamModelIn();

            //Act.
            IActionResult        result        = controller.Put(2, input);
            CreatedAtRouteResult createdResult = result as CreatedAtRouteResult;
            TeamModelOut         modelOut      = createdResult.Value as TeamModelOut;

            //Assert.
            teamsService.Verify(r => r.Modify(It.IsAny <TeamDto>()), Times.Once);
            teamsService.Verify(r => r.AddTeam(It.IsAny <TeamDto>()), Times.Once);
            Assert.AreEqual("GetTeamById", createdResult.RouteName);
            Assert.AreEqual(201, createdResult.StatusCode);
            Assert.AreEqual(2, modelOut.Id);
        }
Exemplo n.º 15
0
        public void GetTeamOkTeamsController()
        {
            var teamServicesMock           = new Mock <ITeamServices>();
            var encounterServicesMock      = new Mock <IEncounterSimpleServices>();
            var encounterQueryServicesMock = new Mock <IEncounterQueryServices>();

            TeamDTO team1 = new TeamDTO()
            {
                Name = "Team1", SportName = "Futbol"
            };

            string teamId = "Team1_Futbol";

            teamServicesMock.Setup(t => t.GetTeam(teamId)).Returns(team1);
            ILoginServices login = new LoginServicesMock(mariano);

            var httpContext = new DefaultHttpContext();

            httpContext.Request.Headers["Authorization"] = "";
            var controllerContext = new ControllerContext()
            {
                HttpContext = httpContext,
            };
            var controller = new TeamsController(login, teamServicesMock.Object, encounterServicesMock.Object, encounterQueryServicesMock.Object)
            {
                ControllerContext = controllerContext,
            };

            var result = controller.GetTeamById(teamId);

            teamServicesMock.Verify(t => t.GetTeam(teamId), Times.AtMostOnce);
            var resultRequest = result as ActionResult <TeamModelOut>;

            Assert.IsNotNull(resultRequest);
            Assert.IsNotNull(resultRequest.Value);
            TeamModelOut teamRecover = resultRequest.Value;

            Assert.AreEqual(team1.Name, teamRecover.Name);
            Assert.AreEqual(team1.SportName, teamRecover.SportName);
        }