public void GetTopPlayers_Top_8() { var manager = new SoccerTeamsManager(); manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(2, "Time 2", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(3, "Time 3", DateTime.Now, "cor 1", "cor 2"); manager.AddPlayer(1, 1, "Jogador", DateTime.Today, 10, 10); manager.AddPlayer(2, 1, "Jogador", DateTime.Today, 05, 10); manager.AddPlayer(3, 1, "Jogador", DateTime.Today, 30, 10); manager.AddPlayer(4, 2, "Jogador", DateTime.Today, 50, 10); manager.AddPlayer(5, 2, "Jogador", DateTime.Today, 10, 10); manager.AddPlayer(6, 2, "Jogador", DateTime.Today, 40, 10); manager.AddPlayer(7, 3, "Jogador", DateTime.Today, 10, 10); manager.AddPlayer(8, 3, "Jogador", DateTime.Today, 50, 10); manager.AddPlayer(9, 3, "Jogador", DateTime.Today, 05, 05); var topPlayerId = new List <long> { 4, 8, 6, 3, 1, 5, 7, 2 }; var result = manager.GetTopPlayers(8); Assert.Equal(topPlayerId, result); }
public void Should_Get_Null_Best_Players_List() { var manager = new SoccerTeamsManager(); var teams = manager.GetTopPlayers(2); Assert.Empty(teams); }
public void GetTopPlayers_Sem_Jogadores() { var manager = new SoccerTeamsManager(); manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(2, "Time 2", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(3, "Time 3", DateTime.Now, "cor 1", "cor 2"); var topPlayerId = new List <long>(); Assert.Equal(topPlayerId, manager.GetTopPlayers(10)); }
public void Should_Return_Top_Players() { var manager = new SoccerTeamsManager(); Assert.Empty(manager.GetTopPlayers(3)); manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2"); var skillsLevelList = new List <int>() { 10, 20, 40, 40, 50 }; for (int i = 1; i < skillsLevelList.Count(); i++) { manager.AddPlayer(i, 1, $"Jogador {i}", DateTime.Today, skillsLevelList[i], 0); } Assert.Equal(new List <long>() { 4, 2, 3 }, manager.GetTopPlayers(3)); }
public void GetTopPlayers_Top_0() { var manager = new SoccerTeamsManager(); manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(2, "Time 2", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(3, "Time 3", DateTime.Now, "cor 1", "cor 2"); manager.AddPlayer(4, 2, "Jogador", DateTime.Today, 50, 10); manager.AddPlayer(6, 2, "Jogador", DateTime.Today, 40, 10); manager.AddPlayer(8, 3, "Jogador", DateTime.Today, 50, 10); var topPlayerId = new List <long>(); Assert.Equal(topPlayerId, manager.GetTopPlayers(0)); }
public void Should_Get_Best_Players() { var manager = new SoccerTeamsManager(); manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(2, "Time 2", DateTime.Now, "cor 1", "cor 2"); var playersIds = new List <long>() { 15, 2, 33, 4, 13 }; var skill = new List <int>() { 30, 50, 50, 30, 10 }; for (int i = 0; i < playersIds.Count(); i++) { manager.AddPlayer(playersIds[i], 1, $"Jogador {i}", DateTime.Now, skill[i], 0); } playersIds = new List <long>() { 16, 3, 34, 5, 14 }; skill = new List <int>() { 35, 52, 50, 10, 10 }; for (int i = 0; i < playersIds.Count(); i++) { manager.AddPlayer(playersIds[i], 2, $"Boleiro {i}", DateTime.Now, skill[i], 0); } var bestPlayers = manager.GetTopPlayers(5); Assert.Equal(3, bestPlayers[0]); Assert.Equal(2, bestPlayers[1]); Assert.Equal(33, bestPlayers[2]); Assert.Equal(34, bestPlayers[3]); Assert.Equal(16, bestPlayers[4]); }
public void Should_Choose_Top_Team_Player(string treamskillsstr, int top, string topstr) { long id = 0; var manager = new SoccerTeamsManager(); var teamSkills = treamskillsstr.Split("|"); for (int i = 0; i < teamSkills.Count(); i++) { manager.AddTeam(i, $"Time {i}", DateTime.Now, "cor 1", "cor 2"); var skillsLevelList = teamSkills[i].Split(',').Select(x => int.Parse(x)).ToList(); for (int j = 0; j < skillsLevelList.Count(); j++) { manager.AddPlayer(id++, i, $"Jogador {id}", DateTime.Today, skillsLevelList[j], 0); } } var ltp = manager.GetTopPlayers(top); var topstrobtido = string.Join(",", ltp); Assert.Equal(topstr, topstrobtido); }
public void My_Tests() { var manager = new SoccerTeamsManager(); // search all Teams Assert.Equal(new List <long> { }, manager.GetTeams()); // search top players Assert.Equal(new List <long> { }, manager.GetTopPlayers(2)); // insert Teams manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(2, "Time 2", DateTime.Now, "cor 1", "cor 2"); manager.AddTeam(3, "Time 3", DateTime.Now, "cor 3", "cor 4"); Assert.Throws <UniqueIdentifierException>(() => manager.AddTeam(1, "Time 1", DateTime.Now, "cor 1", "cor 2")); // insert Players manager.AddPlayer(1, 1, "Jogador 1", new DateTime(1983, 03, 01), 10, 10); manager.AddPlayer(2, 1, "Jogador 2", new DateTime(1985, 02, 01), 69, 100); manager.AddPlayer(3, 1, "Jogador 3", new DateTime(1987, 12, 01), 65, 100); manager.AddPlayer(9, 1, "Jogador 9", new DateTime(1989, 07, 01), 31, 10); manager.AddPlayer(6, 1, "Jogador 6", new DateTime(1990, 05, 01), 72, 100); manager.AddPlayer(4, 1, "Jogador 4", new DateTime(1992, 09, 01), 86, 100); manager.AddPlayer(8, 1, "Jogador 8", new DateTime(1984, 04, 01), 10, 10); manager.AddPlayer(5, 1, "Jogador 5", new DateTime(1983, 03, 01), 90, 100); manager.AddPlayer(7, 1, "Jogador 7", new DateTime(1999, 03, 01), 100, 100); manager.AddPlayer(11, 2, "Jogador 1", new DateTime(1995, 03, 01), 10, 10); manager.AddPlayer(12, 2, "Jogador 2", new DateTime(1997, 03, 01), 19, 100); manager.AddPlayer(13, 2, "Jogador 3", new DateTime(1983, 03, 01), 52, 100); Assert.Throws <UniqueIdentifierException>(() => manager.AddPlayer(1, 1, "Jogador 1", DateTime.Today, 0, 0)); Assert.Throws <TeamNotFoundException>(() => manager.AddPlayer(99, 99, "Jogador 1", DateTime.Today, 0, 0)); // search player Assert.Equal("Jogador 1", manager.GetPlayerName(1)); Assert.Throws <PlayerNotFoundException>(() => manager.GetPlayerName(99)); // search team Assert.Equal("Time 1", manager.GetTeamName(1)); Assert.Throws <TeamNotFoundException>(() => manager.GetTeamName(99)); // search players by team Assert.Equal(new List <long> { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, manager.GetTeamPlayers(1)); Assert.Throws <TeamNotFoundException>(() => manager.GetTeamPlayers(99)); // search best player on team Assert.Equal(7, manager.GetBestTeamPlayer(1)); Assert.Throws <TeamNotFoundException>(() => manager.GetBestTeamPlayer(99)); // search oldest player on team Assert.Equal(1, manager.GetOlderTeamPlayer(1)); Assert.Throws <TeamNotFoundException>(() => manager.GetOlderTeamPlayer(99)); // search all Teams Assert.Equal(new List <long> { 1, 2, 3 }, manager.GetTeams()); // search higher salary by team Assert.Equal(2, manager.GetHigherSalaryPlayer(1)); Assert.Throws <TeamNotFoundException>(() => manager.GetHigherSalaryPlayer(99)); // search salary from player Assert.Equal(10, manager.GetPlayerSalary(1)); Assert.Throws <PlayerNotFoundException>(() => manager.GetPlayerSalary(99)); // search top players Assert.Equal(new List <long> { 7, 5 }, manager.GetTopPlayers(2)); // search shirt color from visitor Assert.Equal("cor 2", manager.GetVisitorShirtColor(1, 2)); Assert.Equal("cor 3", manager.GetVisitorShirtColor(1, 3)); Assert.Throws <TeamNotFoundException>(() => manager.GetVisitorShirtColor(99, 1)); Assert.Throws <TeamNotFoundException>(() => manager.GetVisitorShirtColor(1, 99)); Assert.Throws <TeamNotFoundException>(() => manager.GetVisitorShirtColor(99, 99)); }
public void Should_Sort_All_Players_By_Skill_When_Get_Top_Players(string skillsMap, int top, string topPlayersIds) { var playerId = 1; var teamSkillList = skillsMap.Split("|"); var manager = new SoccerTeamsManager(); for (long teamId = 1; teamId <= teamSkillList.Length; teamId++) { manager.AddTeam(teamId, $"Time {teamId}", DateTime.Now, "cor 1", "cor 2"); var playerSkillList = teamSkillList[teamId - 1].Split(",").Select(x => int.Parse(x)).ToList(); for (int i = 0; i < playerSkillList.Count; i++) { manager.AddPlayer(playerId, teamId, $"Player {playerId}", DateTime.Today, playerSkillList[i], 0); playerId++; } } Assert.Equal(topPlayersIds.Split(",").Select(x => long.Parse(x)).ToList(), manager.GetTopPlayers(top)); }