public Response GetAllLeagues()
        {
            _response = new Response();
            _response.Leagues = _repo.GetAllLeagues();

            if (_response.Leagues != null)
            {
                _response.Success = true;

            }

            return _response;
        }
        public Response CreatePlayer(Player p)
        {
            var player = _repo.CreatePlayer(p);

            _response = new Response();

            if (player != null)
            {
                _response.Success = true;
                _response.Player = player;
            }

            return _response;
        }
        public Response GetAllPlayerOnAllTeams()
        {
            var players = _repo.GetAllPlayersOnAllTeams();

            _response = new Response();

            if (players != null)
            {
                _response.Success = true;
                _response.Players = players;
            }

            return _response;
        }
        public void GetAllLeaguesTest()
        {
            List<League> leaguesExpected = new List<League>();

            _response = _ops.GetAllLeagues();

            using (SqlConnection cn = new SqlConnection(Settings.ConnectionString))
            {
                leaguesExpected = cn.Query<League>("select * from Leagues").ToList();
            }

            var expected = _jss.Serialize(leaguesExpected);
            var actual = _jss.Serialize(_response.Leagues);

            Assert.AreEqual(expected, actual);
        }
        public Response AddTeam(Team teamToAdd)
        {
            _response = new Response();

            var team = _repo.AddTeam(teamToAdd);

            if (team != null)
            {
                _response.Success = true;
                _response.Team = team;
            }
            else
            {
                _response.Success = false;
            }

            return _response;
        }
        public Response GetAllTeams()
        {
            _response = new Response();
            _response.Teams = _repo.GetAllTeams();

            if (_response.Teams != null)
            {
                _response.Success = true;

            }

            return _response;
        }
 public void SetUp()
 {
     _ops = new BaseballOperations();
     _response = new Response();
     _jss = new JavaScriptSerializer();
 }
        public void TradePlayerTests(int playerID, int newTeamID)
        {
            _response = _ops.TradePlayer(playerID, newTeamID);

            Assert.AreEqual(true, _response.Success);
        }
        public void GetAllTeamsTest()
        {
            List<Team> teamsExpected = new List<Team>();

            _response = _ops.GetAllTeams();

            using (SqlConnection cn = new SqlConnection(Settings.ConnectionString))
            {
                teamsExpected = cn.Query<Team>("select * from Teams t " +
                                           "inner join Leagues l " +
                                           "on t.LeagueID = l.LeagueID").ToList();
            }

            var expected = _jss.Serialize(teamsExpected);
            var actual = _jss.Serialize(_response.Teams);

            Assert.AreEqual(expected, actual);
        }
        public void GetPlayersByTeamNameTest(int teamID)
        {
            //List<Player> playersExpected = new List<Player>();

            _response = _ops.GetPlayersByTeamName(teamID);

            var playersExpected = _ops.GetAllPlayerOnAllTeams().Players.Where(p => p.Team.TeamID == teamID);

            var expected = _jss.Serialize(playersExpected);
            var actual = _jss.Serialize(_response.Players);

            Assert.AreEqual(expected, actual);
        }
        public Response GetPlayerByID(int playerID)
        {
            var player = _repo.GetPlayerByID(playerID);
            _response = new Response();

            if (player != null)
            {
                _response.Success = true;
                _response.Player = player;

            }

            return _response;
        }
        public Response GetAllPositions()
        {
            _response = new Response();
            var positions = _repo.GetAllPositions();

            if (positions != null)
            {
                _response.Success = true;
                _response.Positions = positions;
            }

            return _response;
        }
        //NOT IN REQUIREMENTS
        //public Response AddLeague(League leagueToAdd)
        //{
        //    _response = new Response();
        //    var league = _repo.AddLeague(leagueToAdd);
        //    if (league != null)
        //    {
        //        _response.Success = true;
        //        _response.League = league;
        //    }
        //    return _response;
        //}
        public Response GetTeamByID(int teamID)
        {
            _response = new Response();

            var team = _repo.GetTeamByID(teamID);

            if (team != null)
            {
                _response.Success = true;
                _response.Team = team;
            }
            else
            {
                _response.Success = false;
            }

            return _response;
        }
        public Response GetPlayersByTeamName(int teamID)
        {
            List<Player> players = _repo.GetPlayersByTeamName(teamID);
            _response = new Response();

            if (players != null)
            {
                _response.Success = true;
                _response.Players = players;
            }
            return _response;
        }
        public Response GetLeagueByID(int leagueID)
        {
            var league = _repo.GetLeagueByID(leagueID);
            _response = new Response();

            if (league != null)
            {
                _response.Success = true;
                _response.League = league;
            }

            return _response;
        }
        public Response TradePlayer(int playerID, int newTeamID)
        {
            var players = _repo.GetAllPlayersOnAllTeams();
            var player = players.FirstOrDefault(p => p.PlayerID == playerID);
            _response = new Response();

            var tradedPlayer = _repo.TradePlayer(playerID, newTeamID);

            if (tradedPlayer.Team.TeamID == newTeamID)
            {
                _response.Success = true;
                _response.Player = tradedPlayer;
            }

            return _response;
        }
 public BaseballOperations()
 {
     _response = new Response();
 }
        public Response RemovePlayerByID(int playerID)
        {
            var player = _repo.RemovePlayer(playerID);

            _response = new Response();

            if (player.PlayerID == 0)
            {
                _response.Success = true;

            }
            else
            {
                _response.Success = false;
            }

            return _response;
        }
        public Response GetTeamsByLeagueID(int leagueID)
        {
            _response = new Response();
            var leagueTeams = _repo.GetTeamsByLeagueID(leagueID);

            if (leagueTeams != null)
            {
                _response.Success = true;
                _response.League = leagueTeams;
            }
            else
            {
                _response.Success = false;
            }

            return _response;
        }