Ejemplo n.º 1
0
 public IActionResult GetAll()
 {
     try
     {
         TeamsResponse response = _teamsClient.GetAll(new Empty());
         LogData       logData  = new()
         {
             CallerMethodName = nameof(GetAll),
             CallSide         = nameof(TeamsController),
             CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
             Request          = new Empty(),
             Response         = response
         };
         _logger.AddLog(logData);
         return(Ok(response));
     }
     catch (Exception ex)
     {
         LogData logData = new()
         {
             CallerMethodName = nameof(GetAll),
             CallSide         = nameof(TeamsController),
             CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
             Request          = new Empty(),
             Response         = ex
         };
         _logger.AddErrorLog(logData);
         return(InternalServerError());
     }
 }
Ejemplo n.º 2
0
        public void GetAll_should_handle_exception()
        {
            // Arrange
            BaseMock.ShouldThrowException = true;
            TeamsResponse expected = new()
            {
                Status = new BaseResponse {
                    Code = Code.UnknownError, ErrorMessage = "An error occured while loading teams data"
                }
            };
            Empty   request     = new Empty();
            LogData expectedLog = new()
            {
                CallSide         = nameof(TeamsService),
                CallerMethodName = nameof(_teamsService.GetAll),
                CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                Request          = request,
                Response         = new Exception("Test exception")
            };

            // Act
            TeamsResponse actual = _teamsService.GetAll(request, null).Result;

            // Assert
            Assert.AreEqual(expected.Status, actual.Status, "Response status as expected");
            Assert.AreEqual(expected.Data, actual.Data, "Response status as expected");
            _loggerMock.Verify(m => m.AddErrorLog(expectedLog), Times.Once);
        }
    }
}
Ejemplo n.º 3
0
        public void GetAll_should_return_all_teams()
        {
            // Arrange
            TeamsResponse expected = new()
            {
                Status = new BaseResponse {
                    Code = Code.Success, ErrorMessage = string.Empty
                }
            };

            expected.Data.Add(new TeamData
            {
                Id          = _team2.Id,
                CreatedOn   = Timestamp.FromDateTime(_team2.CreatedOn.ToUniversalTime()),
                Description = _team2.Description,
                Name        = _team2.Name
            });

            expected.Data.Add(new TeamData
            {
                Id          = _team1.Id,
                CreatedOn   = Timestamp.FromDateTime(_team1.CreatedOn.ToUniversalTime()),
                Description = _team1.Description,
                Name        = _team1.Name
            });

            Empty request = new Empty();

            LogData expectedLog = new()
            {
                CallSide         = nameof(TeamsService),
                CallerMethodName = nameof(_teamsService.GetAll),
                CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                Request          = request,
                Response         = expected
            };

            // Act
            TeamsResponse actual = _teamsService.GetAll(request, null).Result;

            // Assert
            Assert.AreEqual(expected.Status, actual.Status, "Response status as expected");
            Assert.AreEqual(expected.Data, actual.Data, "Response status as expected");
            _loggerMock.Verify(m => m.AddLog(expectedLog), Times.Once);
        }

        [Test]
Ejemplo n.º 4
0
        public static async Task <TeamsResponse> GetTeamsInProject(string project)
        {
            TeamsResponse objResponse = null;

            using (HttpResponseMessage response = await Client.GetAsync(
                       $"/tfs/{TfsVariables.Collection}/_apis/projects/{project}/teams"))
            {
                response.EnsureSuccessStatusCode();
                string content = await response.Content.ReadAsStringAsync();

                objResponse = JsonConvert.DeserializeObject <TeamsResponse>(content);
                foreach (var item in objResponse.value)
                {
                    Console.WriteLine($"All teams in project {project} - {item.name}");
                }
            }

            return(objResponse);
        }
Ejemplo n.º 5
0
        public async Task <ActionResult <TeamsResponse> > GetTeams([FromQuery(Name = "perPage")] int perPage = 0, [FromQuery(Name = "page")] int page = 0)
        {
            var teams = await _apiService.Get <Team>(perPage, page);

            if (teams is null)
            {
                return(NotFound());
            }

            var result   = new TeamsResponse();
            var teamList = new List <TeamResponse>();

            foreach (var team in teams)
            {
                teamList.Add(new TeamResponse(
                                 team.Id,
                                 team.NbaNetId,
                                 team.Name,
                                 team.NickName,
                                 team.Abbreviation,
                                 team.Conference,
                                 team.Division,
                                 team.Stats.Wins,
                                 team.Stats.Losses,
                                 team.Stats.GamesBehind,
                                 team.Stats.ConferenceRank,
                                 team.Stats.HomeWins,
                                 team.Stats.HomeLosses,
                                 team.Stats.AwayWins,
                                 team.Stats.AwayLosses,
                                 team.Stats.WinningStreak
                                 ));
            }

            result.Teams = teamList;

            var responseInfo = await _apiService.GetEntityInfo <Team>(perPage);

            result.Meta = new EntityInfo(responseInfo.Item1, responseInfo.Item2);

            return(result);
        }
Ejemplo n.º 6
0
        public void GetAll_should_return_response_from_grpc_client()
        {
            // Arrange
            TeamsResponse response = new()
            {
                Status = new BaseResponse {
                    Code = Code.Success, ErrorMessage = string.Empty
                }
            };

            response.Data.Add(new TeamData
            {
                Id          = 1,
                Name        = "test",
                Description = "test",
                CreatedOn   = Timestamp.FromDateTime(_dateTimeUtil.GetCurrentDateTime())
            });
            BaseMock.Response = response;

            LogData expectedLog = new()
            {
                CallSide         = nameof(TeamsController),
                CallerMethodName = nameof(_teamsController.GetAll),
                CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                Request          = new Empty(),
                Response         = response
            };

            // Act
            ObjectResult  actual     = _teamsController.GetAll() as ObjectResult;
            TeamsResponse actualData = actual.Value as TeamsResponse;

            // Assert
            Assert.AreEqual(200, actual.StatusCode, "StatusCode as expected");
            Assert.AreEqual(response, actualData, "Response data as expected");
            _loggerMock.Verify(m => m.AddLog(expectedLog), Times.Once);
            _teamsClientMock.Verify(m => m.GetAll(new Empty(), null, null, new CancellationToken()), Times.Once);
        }

        [Test]