Ejemplo n.º 1
0
        public void TestMoveAllRunners()
        {
            InningState ins = new InningState();

            for (int i = 0; i <= 4; i++)
            {
                ins.MoveAllRunners(i);
                Assert.IsTrue(IsStart(ins));
            }
        }
Ejemplo n.º 2
0
        public void TestWalk()
        {
            byte[] correct = new byte[] { 1, 3, 3, 7, 5, 7, 7, 15, 9 };


            for (byte i = 0; i < correct.Length; i++)
            {
                InningState a = new InningState(i);
                a.WalkHitter();
                Assert.AreEqual(a.Bases, correct[i]);
            }
        }
Ejemplo n.º 3
0
        public void EnterHalfInning(Play[] plays)
        {
            InningState start = new InningState();

            // Simulate plays, find possibilities for missing plays
            Team hittingTeam = GetHittingTeam();

            for (int i = 0; i < plays.Length; i++)
            {
                Player atBat = hittingTeam.UpToBat;
            }

            halfInnings += 1;
        }
Ejemplo n.º 4
0
        public void TestInningStateEquality()
        {
            InningState a = new InningState();
            InningState b = new InningState();

            Assert.IsTrue(a.Equals(b));
            Assert.IsTrue(a.GetHashCode() == b.GetHashCode());

            b.Outs = 1;
            Assert.IsFalse(a.Equals(b));
            Assert.IsFalse(a.GetHashCode() == b.GetHashCode());

            a.Outs = 1;
            Assert.IsTrue(a.Equals(b));
            Assert.IsTrue(a.GetHashCode() == b.GetHashCode());

            a.RunsScored = 2;
            Assert.IsFalse(a.Equals(b));
            Assert.IsFalse(a.GetHashCode() == b.GetHashCode());

            b.RunsScored = 2;
            Assert.IsTrue(a.Equals(b));
            Assert.IsTrue(a.GetHashCode() == b.GetHashCode());

            b.Bases = 5;
            Assert.IsFalse(a.Equals(b));
            Assert.IsFalse(a.GetHashCode() == b.GetHashCode());

            a.Bases = 5;
            Assert.IsTrue(a.Equals(b));
            Assert.IsTrue(a.GetHashCode() == b.GetHashCode());

            InningState c = new InningState(a);

            Assert.IsTrue(a.Equals(c));
            Assert.IsTrue(a.GetHashCode() == c.GetHashCode());
        }
Ejemplo n.º 5
0
 public override InningState Simulate(InningState state)
 {
     state.WalkHitter();
     return(state);
 }
Ejemplo n.º 6
0
 public Walk(InningState next) : base(next)
 {
 }
Ejemplo n.º 7
0
 public override InningState Simulate(InningState state)
 {
     state.Outs += 1;
     return(state);
 }
Ejemplo n.º 8
0
 public Strikeout(InningState next) : base(next)
 {
 }
Ejemplo n.º 9
0
 public virtual InningState Simulate(InningState state)
 {
     return(state);
 }
Ejemplo n.º 10
0
 public Play(InningState next)
 {
     NextState = next;
 }
Ejemplo n.º 11
0
 public bool IsValid(InningState state)
 {
     return(Simulate(state) == NextState);
 }
Ejemplo n.º 12
0
 public Hit(InningState next, int bases) : base(next)
 {
     Bases = bases;
 }
Ejemplo n.º 13
0
 public override InningState Simulate(InningState state)
 {
     state.Hit(Bases);
     return(state);
 }
Ejemplo n.º 14
0
 public bool IsStart(InningState ins)
 {
     return(ins.Bases == 0 && ins.Outs == 0 && ins.RunsScored == 0);
 }