Exemplo n.º 1
0
        public void MapDeleteTeamShouldSucceed()
        {
            // Arrange
            var id         = Guid.NewGuid();
            var apiVersion = "1.0";
            var version    = 34567;
            var ifMatch    = "34567";

            // Act
            var request = new DeleteTeamRequest(new DeleteTeamFromRoute()
            {
                Id = id.ToString()
            },
                                                new DeleteTeamFromQuery()
            {
                ApiVersion = apiVersion
            },
                                                new DeleteTeamFromHeader()
            {
                IfMatch = ifMatch
            });

            var command       = new DeleteTeamCommand(id, version);
            var mappedCommand = _cqsMapper.Map(request);

            // Assert
            command.Should().BeEquivalentTo(mappedCommand);
        }
Exemplo n.º 2
0
        public DeleteTeamCommand Map(DeleteTeamRequest request)
        {
            var id      = new Guid(request.RouteId);
            var version = ToVersion(request.HeaderIfMatch);
            var command = new DeleteTeamCommand(id, version);

            return(command);
        }
Exemplo n.º 3
0
        public async Task <ResponseBase> DeleteTeam(DeleteTeamRequest request)
        {
            string responseString = await CallAsync(DeleteTeamServiceName, JsonConvert.SerializeObject(request), MethodTypeEnum.POST, _state.userState.Token);

            ResponseBase response = JsonConvert.DeserializeObject <ResponseBase>(responseString);

            return(response);
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Produce(DeleteTeamRequest request)
        {
            var validatorActionResult = await _validationArrangement.Validate(request);

            var actionResult = await _operationArrangement.Process(request, validatorActionResult);

            return(actionResult);
        }
Exemplo n.º 5
0
        public async Task <IActionResult> Delete([FromRoute] DeleteTeamFromRoute route,
                                                 [FromQuery] DeleteTeamFromQuery query,
                                                 [FromHeader] DeleteTeamFromHeader header)
        {
            var request = new DeleteTeamRequest(route, query, header);
            var result  = await _apiResult.Produce(request);

            return(result);
        }
Exemplo n.º 6
0
        public void DeleteTeam(int idTeam)
        {
            var business = TeamBusiness.Instance;
            var request  = new DeleteTeamRequest(this.Context);

            request.IdTeam = idTeam;

            business.DeleteTeam(request);
        }
Exemplo n.º 7
0
        public void DeleteTeam(DeleteTeamRequest request)
        {
            if (request != null)
            {
                var dataAccess = new TeamDataAccess(request.Context);

                var team = dataAccess.GetById(request.IdTeam);

                dataAccess.Delete(team.FirstOrDefault());
            }
        }
        public void ConstructorShouldSucceed()
        {
            // Arrange
            var route  = new DeleteTeamFromRoute();
            var query  = new DeleteTeamFromQuery();
            var header = new DeleteTeamFromHeader();

            // Act
            var request = new DeleteTeamRequest(route, query, header);

            // Assert
            request.Should().NotBeNull();
        }
        public void CanOnlyDeleteIfOwner()
        {
            var teamRepo = new Mock<ITeamRepository>();

            var request = new DeleteTeamRequest
                              {
                TeamId = "123",
                ProfileId = "ProfileId"
            };
            var team = new Team(request.TeamId) {Creator = "NotCreator"};
            teamRepo.Setup(x => x.GetById(request.TeamId)).Returns(team);

            var handler = new DeleteTeamRequestHandle(teamRepo.Object);

            var response = handler.Handle(request);

            Assert.That(response.Status, Is.EqualTo(ResponseCodes.NotCreator));
        }
        public void CanDeleteATeam()
        {
            var teamRepo = new Mock<ITeamRepository>();

            var request = new DeleteTeamRequest()
                              {
                                  TeamId = "123",
                                  ProfileId = "ProfileId"
                              };
            var team = new Team(request.TeamId) { Creator = request.ProfileId };
            teamRepo.Setup(x => x.GetById(request.TeamId)).Returns(team);

            var handler = new DeleteTeamRequestHandle(teamRepo.Object);

            var response = handler.Handle(request);

            Assert.That(response.Status, Is.EqualTo(ResponseCodes.Success));
            teamRepo.Verify(x => x.DeleteTeam(request.TeamId));
        }
Exemplo n.º 11
0
        public async Task <IActionResult> Process(DeleteTeamRequest request, IValidatorActionResult validatorActionResult)
        {
            IActionResult actionResult;

            if (validatorActionResult.Result == null)
            {
                var command = _cqsMapper.Map(request);
                var result  = await _mediator.Send(command);

                actionResult = result.IsFailure ? _apiResponse.Fail(result)
                                                : _apiResponse.Deleted();
            }
            else
            {
                actionResult = validatorActionResult.Result;
            }

            return(actionResult);
        }
Exemplo n.º 12
0
 public IActionResult DeleteTeam(DeleteTeamRequest team)
 {
     try
     {
         using (TeamsDbEntities entities = new TeamsDbEntities())
         {
             Team teamList = entities.Teams.FirstOrDefault(p => p.ID == team.TeamID);
             entities.Teams.Remove(teamList);
             List <TeamUserStatu> teamStatusList = entities.TeamUserStatus.Where(p => p.TeamID == team.TeamID).ToList();
             if (teamStatusList != null && teamStatusList.Count != 0)
             {
                 entities.TeamUserStatus.RemoveRange(teamStatusList);
             }
             entities.SaveChanges();
             return(Ok(new { Result = "Success" }));
         }
     }
     catch (Exception)
     {
         return(BadRequest(new { Result = "System Exeption" }));
     }
 }
Exemplo n.º 13
0
        public object Delete(DeleteTeamRequest request)
        {
            var team     = this.Db.SingleById <Team>(request.Id);
            var leagueId = team.LeagueId.GetValueOrDefault();

            team.Throw404NotFoundIfNull("Team existiert nicht!");

            using (var transaction = this.Db.BeginTransaction(IsolationLevel.RepeatableRead))
            {
                this.Db.Delete <TableEntry>(sql => sql.TeamId == team.Id);

                if (this.Db.Count <Match>(p => (p.HomeTeamId == team.Id || p.GuestTeamId == team.Id) && p.CupId != 0) > 0)
                {
                    // team already has cup matches -> we do not delete cup matches and therefore we
                    // have to keep the team, but remove league assignment and delete the league matches
                    team.LeagueId = null;
                    this.Db.Update(team);
                    this.Db.Delete <Match>(p => (p.HomeTeamId == team.Id || p.GuestTeamId == team.Id) && p.LeagueId > 0);

                    MatchFactory.ForfaitOpenCupMatchesForTeam(team.Id, this.Db);
                }
                else
                {
                    this.Db.Delete <Match>(sql => sql.GuestTeamId == team.Id || sql.HomeTeamId == team.Id);
                    this.Db.Delete <Team>(sql => sql.Id == team.Id);
                }


                if (leagueId != default(int))
                {
                    StandingsCalculator.Calculate(this.Db, leagueId);
                }

                transaction.Commit();
            }

            return(null);
        }