Ejemplo n.º 1
0
 private static void ValidatePlayer(BaseballPlayer existing, BaseballPlayer data, BaseballPlayer results)
 {
     Assert.Equal((existing ?? data).BhqId, results.BhqId);
     Assert.Equal((existing ?? data).FirstName, results.FirstName);
     Assert.Equal((existing ?? data).LastName, results.LastName);
     Assert.Equal((data ?? existing).Age, results.Age);
     Assert.Equal((existing ?? data).Type, results.Type);
     Assert.Equal((existing ?? data).Positions, results.Positions);
     Assert.Equal((data ?? existing).Team, results.Team);
     Assert.Equal((existing ?? data).Status, results.Status);
     Assert.Equal((existing ?? new BaseballPlayer()).League1, results.League1);
     Assert.Equal((existing ?? new BaseballPlayer()).DraftRank, results.DraftRank);
     Assert.Equal((data ?? new BaseballPlayer()).MayberryMethod, results.MayberryMethod);
     Assert.Equal(GetBattingStats((data ?? new BaseballPlayer()).BattingStats, StatsType.YTD).AtBats,
                  GetBattingStats(results.BattingStats, StatsType.YTD).AtBats);
     Assert.Equal(GetPitchingStats((data ?? new BaseballPlayer()).PitchingStats, StatsType.YTD).InningsPitched,
                  GetPitchingStats(results.PitchingStats, StatsType.YTD).InningsPitched);
     Assert.Equal(GetBattingStats((data ?? new BaseballPlayer()).BattingStats, StatsType.PROJ).AtBats,
                  GetBattingStats(results.BattingStats, StatsType.PROJ).AtBats);
     Assert.Equal(GetPitchingStats((data ?? new BaseballPlayer()).PitchingStats, StatsType.PROJ).InningsPitched,
                  GetPitchingStats(results.PitchingStats, StatsType.PROJ).InningsPitched);
     Assert.Equal(GetBattingStats((data ?? new BaseballPlayer()).BattingStats, StatsType.YTD).AtBats +
                  GetBattingStats((data ?? new BaseballPlayer()).BattingStats, StatsType.PROJ).AtBats,
                  GetBattingStats(results.BattingStats, StatsType.CMBD).AtBats);
     Assert.Equal(GetPitchingStats((data ?? new BaseballPlayer()).PitchingStats, StatsType.YTD).InningsPitched +
                  GetPitchingStats((data ?? new BaseballPlayer()).PitchingStats, StatsType.PROJ).InningsPitched,
                  GetPitchingStats(results.PitchingStats, StatsType.CMBD).InningsPitched);
 }
 private static BaseballPlayer MergePlayer(BaseballPlayer existing, BaseballPlayer bhqData) =>
 existing == null
         ? bhqData
         : new BaseballPlayer
 {
     Id                = existing.Id,
     BhqId             = existing.BhqId,
     FirstName         = existing.FirstName,
     LastName          = existing.LastName,
     Age               = MergePlayerValue(existing, bhqData, p => p.Age),
     Type              = existing.Type,
     Positions         = existing.Positions,
     Team              = MergePlayerValue(existing, bhqData, p => p.Team),
     Status            = existing.Status,
     League1           = existing.League1,
     League2           = existing.League2,
     DraftRank         = existing.DraftRank,
     AverageDraftPick  = existing.AverageDraftPick,
     HighestPick       = existing.HighestPick,
     DraftedPercentage = existing.DraftedPercentage,
     Reliability       = bhqData.Reliability,
     MayberryMethod    = bhqData.MayberryMethod,
     BattingStats      = bhqData.BattingStats,
     PitchingStats     = bhqData.PitchingStats
 };
Ejemplo n.º 3
0
        public ActionResult Edit(BaseballPlayer baseballPlayer)
        {
            if (ModelState.IsValid)
            {
                db.Update(baseballPlayer);

                return(RedirectToAction("Details", new { id = baseballPlayer.ID }));
            }
            return(View(baseballPlayer));
        }
        public void Update(BaseballPlayer baseballPlayer)
        {
            var existing = Get(baseballPlayer.ID);

            if (existing != null)
            {
                existing.PlayerName = baseballPlayer.PlayerName;
                existing.Position   = baseballPlayer.Position;
            }
        }
Ejemplo n.º 5
0
 private static BaseballPlayer CleanPlayer(BaseballPlayer player)
 {
     player.CombinedBattingStats    = player.CombinedBattingStats == null ? new BattingStats() : player.CombinedBattingStats;
     player.CombinedPitchingStats   = player.CombinedPitchingStats == null ? new PitchingStats() : player.CombinedPitchingStats;
     player.ProjectedBattingStats   = player.ProjectedBattingStats == null ? new BattingStats() : player.ProjectedBattingStats;
     player.ProjectedPitchingStats  = player.ProjectedPitchingStats == null ? new PitchingStats() : player.ProjectedPitchingStats;
     player.YearToDateBattingStats  = player.YearToDateBattingStats == null ? new BattingStats() : player.YearToDateBattingStats;
     player.YearToDatePitchingStats = player.YearToDatePitchingStats == null ? new PitchingStats() : player.YearToDatePitchingStats;
     return(player);
 }
Ejemplo n.º 6
0
        public void Update(BaseballPlayer baseballPlayer)
        {
            //var r = Get(baseballPlayer.ID);
            //r.PlayerName = "";
            //db.SaveChanges();

            // This should already live in the database
            // Tell you so you can keep track of it.
            // This will handle multiple users
            // OptimisicConcurrency
            var entry = db.Entry(baseballPlayer);

            entry.State = EntityState.Modified;
            db.SaveChanges();
        }
Ejemplo n.º 7
0
        private IAthlete GetAthlete(SportType sportType)
        {
            //Interfaces define contracts that a subscribing class must implement
            //However, the fact that you can store a classes object in an interface
            //references adds tremendous flexibility to your code
            switch (sportType)
            {
            case SportType.Football:
                IAthlete footballPlayer = new FootballPlayer();
                return(footballPlayer);

            case SportType.Basketball:
                IAthlete basketBallPlayer = new BasketBallPlayer();
                return(basketBallPlayer);

            default:
                IAthlete baseballPlayer = new BaseballPlayer();
                return(baseballPlayer);
            }
        }
Ejemplo n.º 8
0
        [Fact] public void DefaultsSetTest()
        {
            var obj = new BaseballPlayer();

            Assert.Equal(Guid.Empty, obj.Id);
            Assert.Equal(0, obj.BhqId);
            Assert.Null(obj.FirstName);
            Assert.Null(obj.LastName);
            Assert.Equal(0, obj.Age);
            Assert.Equal(PlayerType.U, obj.Type);
            Assert.Null(obj.Positions);
            Assert.Null(obj.Team);
            Assert.Equal(PlayerStatus.XX, obj.Status);
            Assert.Equal(LeagueStatus.A, obj.League1);
            Assert.Equal(LeagueStatus.A, obj.League2);
            Assert.Equal(9999, obj.DraftRank);
            Assert.Equal(9999, obj.AverageDraftPick);
            Assert.Equal(9999, obj.HighestPick);
            Assert.Equal(0, obj.DraftedPercentage);
            Assert.Equal(0, obj.Reliability);
            Assert.Equal(0, obj.MayberryMethod);
            Assert.Empty(obj.BattingStats);
            Assert.Empty(obj.PitchingStats);
        }
 private static T MergePlayerValue <T>(BaseballPlayer existing, BaseballPlayer bhqData, Func <BaseballPlayer, T> getter) =>
 bhqData.BhqId > 0 ? getter(bhqData) : getter(existing);
 private static ProjectionKey BuildKey(BaseballPlayer player) => new ProjectionKey(player.BhqId, player.Type);
Ejemplo n.º 11
0
        static void Main(string[] args)
        {
            const int MIN_PLAYERS_ON_TEAM = 1; //only you can prevent magic numbers
            const int MAX_PLAYERS_ON_TEAM = 20;

            /* make sure that the user entered a reasonable number of players and keep asking them if they didn't*/
            Console.WriteLine("Hi, coach! ");

            int numPlayers = getIntInput("How many players are on your team?", MIN_PLAYERS_ON_TEAM, MAX_PLAYERS_ON_TEAM);

            BaseballPlayer[] players = new BaseballPlayer[numPlayers];

            for (int i = 0; i < numPlayers; i++)
            {
                BaseballPlayer bp = new BaseballPlayer();
                Console.WriteLine("What is the players name?");
                bp.Name = Console.ReadLine();

                int atBat = getIntInput("How many times has the player been at bat?", 1, 24);
                bp.AtBats = atBat;

                /*
                 * Console.WriteLine("How many times has the player been at bat?");
                 * string strAtBat = Console.ReadLine();
                 * double atBat = double.Parse(strAtBat);
                 */

                int timesHit = getIntInput("How many times has the player hit?", 0, atBat);
                bp.NumHits = timesHit;

                /*
                 * Console.WriteLine("How many times has the player hit?");
                 * string strTimesHit = Console.ReadLine();
                 * int timesHit = int.Parse(strTimesHit);
                 */

                players[i] = bp;
            }

            //print the name and batting average of each player
            Console.WriteLine("Player name\tBatting average");

            /* prefer the foreach loop because we don't care about the index i and we aren't chagning it
             * for (int i =0; i<numPlayers; i++)
             * {
             *  Console.WriteLine(players[i].Name + " " + players[i].BattingAverageString);
             * }
             */

            foreach (BaseballPlayer b in players)
            {
                Console.WriteLine(b.Name + "\t" + b.BattingAverageString);
            }

            //print the player name and batting average of the player with the highest batting average
            BaseballPlayer playerWithHighestBattingAverage = players[0];

            for (int i = 1; i < numPlayers; i++) //start at one because we're assuming first element is the highest to start
            {
                if (players[i].BattingAverage > playerWithHighestBattingAverage.BattingAverage)
                {
                    playerWithHighestBattingAverage = players[i];
                }
            }
            Console.WriteLine(playerWithHighestBattingAverage.Name + " had the best batting average of " + playerWithHighestBattingAverage.BattingAverageString);

            /*
             * Console.WriteLine("Fun with strings at the end");
             * string languages = "C#;Java;javascript";
             * string[] arrayLanguages = languages.Split("java");
             *
             * string sentence = "we will be done in time to each lunch at a reasonable time.";
             * string[] words = sentence.Split(' ');
             * Console.WriteLine("the third word is " + words[2]);
             */
        }
Ejemplo n.º 12
0
        static void Main(string[] args)
        {
            var point = new Coordinate();

            point.Latitude  = (decimal) - 82.34561;
            point.Longitude = (decimal) - 27.9674;
            point.Label     = "Somewhere you want to be";
            point.Color     = "Red";
            Console.WriteLine(point);

            var workPants = new Pants("Haggar", "Blue", 32, 31);

            workPants.Worn("Frank");
            Console.WriteLine(workPants);

            var cat = new Pet("King", "Maine Coon");

            cat.Adopt("Frank");
            Console.WriteLine(cat);


            var newCar = new Car("Volkswagen", "Jetta GLI", 2017, true, 90, 29000, 210);

            newCar.Driver("Frank");
            newCar.IncreaseSpeed(10);
            newCar.DecreaseValue(9000);
            newCar.IncreaseHP(15);
            Console.WriteLine(newCar);


            var newCar2 = new Car("Nissan", "Skyline", 1999, true, 110, 150000, 376);

            newCar2.Driver("Carla");
            newCar2.IncreaseSpeed(20);
            newCar2.IncreaseValue(20000);
            newCar2.DecreaseHP(20);
            Console.WriteLine(newCar2);


            var airplane1 = new Airplane("Boeing", "SuperMax 8");   // Passing arguments to this instance of a class.

            airplane1.GroundedPlane(true, "Delta Airlines");        // Passing arguments to this method used in the airplane1 class instance.
            Console.WriteLine(airplane1);


            var airplane2 = new Airplane("Airbus", "A321");

            airplane2.GroundedPlane(false, "Air France");
            Console.WriteLine(airplane2);

            var myPack = new BackPack("Frank", "Red", 12);

            for (var i = 0; i < 3; i++)
            {
                myPack.AddItem();
            }
            var campingPack = new BackPack("Mark", "Blue", 36);

            for (var i = 0; i < 13; i++)
            {
                campingPack.AddItem();
            }
            var purse = new BackPack("Carla", "Green", 6);

            for (var i = 0; i < 10; i++)
            {
                purse.AddItem();
            }
            Console.WriteLine(myPack);
            Console.WriteLine(campingPack);
            Console.WriteLine(purse);

            var pegasus1 = new Pegasus(45, 50);

            pegasus1.IncreaseSpeed(20);
            pegasus1.FlapWings(50);
            Console.WriteLine(pegasus1);

            var bird1 = new Bird(20);

            bird1.FlapWings(10);
            Console.WriteLine(bird1);

            var horse1 = new Horse(30, 30);

            horse1.IncreaseSpeed(40);
            horse1.FlapWings(50);
            Console.WriteLine(horse1);

            /* var animal1 = new Animal {
            *     Name = "Wilbur",
            *     FavoriteFood = "Slop",
            *     Greeting = "Oink"
            *  };
            *  animal1.Speak();
            *  animal1.Eat();
            *  Console.WriteLine("Hello");*/

            var animal2 = new Mule
            {
                Name = "StubbornDale"
            };

            animal2.Speak();
            animal2.Eat();

            //

            var lancelot = new Knight();
            var legolas  = new Archer();
            var merlin   = new Wizard();


            var army = new List <Warrior>();

            army.Add(lancelot);
            army.Add(legolas);
            army.Add(merlin);

            army.ForEach(fighter => fighter.Attack());

            //

            var lancelot2 = new Knight2();
            var legolas2  = new Archer2();
            var merlin2   = new Wizard2();
            var golem2    = new Giant2();
            var gimmly2   = new Cleric2();


            var army2 = new List <Warrior2>();

            army2.Add(lancelot2);
            army2.Add(legolas2);
            army2.Add(merlin2);
            army2.Add(golem2);
            army2.Add(gimmly2);


            army2.ForEach(fighter => fighter.Attack());

            //
            var mickeyMantel  = new BaseballPlayer();
            var michaelJordan = new BasketballPlayer();
            var danMarino     = new FootballPlayer();
            var joeMontana    = new FootballPlayer();

            var league = new List <ScoringAthlete>();

            league.Add(mickeyMantel);
            league.Add(michaelJordan);
            league.Add(danMarino);
            league.Add(joeMontana);

            league.ForEach(player => player.Score());



            //
            Console.ReadLine();
        }
Ejemplo n.º 13
0
 public void Add(BaseballPlayer baseballPlayer)
 {
     db.BaseballPlayers.Add(baseballPlayer);
     db.SaveChanges();
 }
Ejemplo n.º 14
0
 public void Add(BaseballPlayer baseballPlayer)
 {
     baseballPlayers.Add(baseballPlayer);
     baseballPlayer.ID = baseballPlayers.Max(r => r.ID) + 1;
 }