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));
        }
Esempio n. 4
0
        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]);
        }
Esempio n. 7
0
        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));
        }
Esempio n. 9
0
        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));
        }