Ejemplo n.º 1
0
        public void CountingAllowableDirectionTest()
        {
            var player     = new MyBotPlayer(new Field());
            var methodInfo =
                typeof(MyBotPlayer).GetMethod("CountingAllowableDirection", BindingFlags.Instance | BindingFlags.NonPublic);
            var matrix = new bool[Field.Size, Field.Size];

            matrix.Initialize();
            if (methodInfo != null)
            {
                methodInfo.Invoke(player, null);
            }
            var fieldInfo =
                typeof(MyBotPlayer).GetField("_chekDirection", BindingFlags.Instance | BindingFlags.NonPublic);

            bool[] arr = new bool[Enum.GetValues(typeof(Direction)).Length];
            if (fieldInfo != null)
            {
                arr = (bool[])fieldInfo.GetValue(player);
            }

            if (fieldInfo == null)
            {
                return;
            }
            Assert.AreEqual(true, arr[0]);
            Assert.AreEqual(true, arr[1]);
            Assert.AreNotEqual(true, arr[2]);
            Assert.AreNotEqual(true, arr[3]);
        }
Ejemplo n.º 2
0
        public void TransfetMoveTest()
        {
            var controller  = new GameController();
            var human       = new HumanPlay(new Field());
            var rightPlayer = new MyBotPlayer(new Field())
            {
                Oponent = human
            };

            rightPlayer.TransferMove += controller.Transfer_Move;
            rightPlayer.CallTransferMove();
            Assert.AreEqual(true, human.CanMove);
        }
Ejemplo n.º 3
0
        public void OverrideShotTest()
        {
            var player     = new MyBotPlayer(new Field());
            var methodInfo =
                typeof(MyBotPlayer).GetMethod("OverrideShot", BindingFlags.Instance | BindingFlags.NonPublic);
            var matrix = new bool[Field.Size, Field.Size];

            matrix.Initialize();
            Location?location = null;

            if (methodInfo != null)
            {
                location = (Location)methodInfo.Invoke(player, new object[] { matrix, 2 });
            }
            Assert.AreEqual(new Location(0, 2), location);
        }
Ejemplo n.º 4
0
        public void CountingIntactCellTest()
        {
            var player     = new MyBotPlayer(new Field());
            var methodInfo =
                typeof(MyBotPlayer).GetMethod("CountingIntactCell", BindingFlags.Instance | BindingFlags.NonPublic);

            if (methodInfo != null)
            {
                methodInfo.Invoke(player, null);
            }
            var fieldInfo =
                typeof(MyBotPlayer).GetField("IntactCell", BindingFlags.Instance | BindingFlags.NonPublic);

            if (fieldInfo != null)
            {
                Assert.AreEqual(0, (int)fieldInfo.GetValue(player));
            }
        }
Ejemplo n.º 5
0
        public void SureShotTest()
        {
            var player     = new MyBotPlayer(new Field());
            var methodInfo =
                typeof(MyBotPlayer).GetMethod("SureShot", BindingFlags.Instance | BindingFlags.NonPublic);

            if (methodInfo != null)
            {
                methodInfo.Invoke(player, new object[] { Direction.Bottom, new Field(), });
            }
            var fieldInfo =
                typeof(MyBotPlayer).GetField("shotState", BindingFlags.Instance | BindingFlags.NonPublic);

            if (fieldInfo != null)
            {
                Assert.AreEqual(CellStatus.Miss, (CellStatus)fieldInfo.GetValue(player));
            }
        }
Ejemplo n.º 6
0
        public void ChangeDirectionTest()
        {
            var player     = new MyBotPlayer(new Field());
            var methodInfo =
                typeof(MyBotPlayer).GetMethod("ChangeDirection", BindingFlags.Instance | BindingFlags.NonPublic);

            var fieldInfo =
                typeof(MyBotPlayer).GetField("_direction", BindingFlags.Instance | BindingFlags.NonPublic);

            if (methodInfo != null)
            {
                methodInfo.Invoke(player, new object[] { Direction.Top });
            }
            if (fieldInfo != null)
            {
                Assert.AreEqual(Direction.Bottom, (Direction)fieldInfo.GetValue(player));
            }
        }
Ejemplo n.º 7
0
        public void ShotDirectionTest()
        {
            var player     = new MyBotPlayer(new Field());
            var methodInfo =
                typeof(MyBotPlayer).GetMethod("ShotDirection", BindingFlags.Instance | BindingFlags.NonPublic);


            var status = CellStatus.Empty;

            if (methodInfo != null)
            {
                status = (CellStatus)methodInfo.Invoke(player,
                                                       new object[]
                {
                    Direction.Bottom,
                    new Field(),
                });
            }
            Assert.AreEqual(CellStatus.Miss, status);
        }