public void TestRockVsPaper()
        {
            Ass3.Player  human    = new Ass3.Player(100);
            Ass3.Player  ai       = new Ass3.Player(100);
            Ass3.Program temp     = new Ass3.Program();
            int          result   = temp.PlayRound("rock", "paper");
            int          expected = -10;

            Assert.AreEqual(result, expected);
        }
        public void TestPaperVsScissors()
        {
            Ass3.Player  human    = new Ass3.Player(100);
            Ass3.Player  ai       = new Ass3.Player(100);
            Ass3.Program temp     = new Ass3.Program();
            int          result   = temp.PlayRound("paper", "scissors");
            int          expected = -15;

            Assert.AreEqual(result, expected);
        }
        public void TestScissorsVsRock()
        {
            Ass3.Player  human    = new Ass3.Player(100);
            Ass3.Player  ai       = new Ass3.Player(100);
            Ass3.Program temp     = new Ass3.Program();
            int          result   = temp.PlayRound("scissors", "rock");
            int          expected = -20;

            Assert.AreEqual(result, expected);
        }
        public void TestHumanTie()
        {
            Ass3.Player human = new Ass3.Player(100);
            human.Score = 100;
            Ass3.Player ai = new Ass3.Player(100);
            ai.Score = 100;
            Ass3.Program temp     = new Ass3.Program();
            String       result   = temp.DeclareWinner(human, ai);
            String       expected = "The Two Opponents Agreed on a Tie!!!";

            Assert.AreEqual(result, expected);
        }
        public void TestHumanLose()
        {
            Ass3.Player human = new Ass3.Player(99);
            human.Score = 99;
            Ass3.Player ai = new Ass3.Player(100);
            ai.Score = 100;
            Ass3.Program temp     = new Ass3.Program();
            String       result   = temp.DeclareWinner(human, ai);
            String       expected = "AI Won the Game!!!";

            Assert.AreEqual(result, expected);
        }
        public void TestResetNonFullHealth()
        {
            Ass3.Player  human    = new Ass3.Player(1);
            Ass3.Player  ai       = new Ass3.Player(100);
            Ass3.Program temp     = new Ass3.Program();
            int          expected = 100;

            temp.ResetHealth(human, ai);

            int result = human.Health;

            Assert.AreEqual(expected, result);
        }
        public void NeitherLeadGreaterMin()
        {
            int min = 1, max = 1;

            Ass3.Player human = new Ass3.Player(100);
            human.Score = 0;
            Ass3.Player ai = new Ass3.Player(100);
            ai.Score = 0;
            Ass3.Program temp   = new Ass3.Program();
            var          result = temp.BestOutOf(min, max, human, ai);

            Assert.AreEqual(min, result.returnMin);
            Assert.AreEqual(max, result.returnMax);
        }
        public void TestBothHealthAboveZero()
        {
            Ass3.Player human      = new Ass3.Player(100);
            int         humanScore = human.Score;

            Ass3.Player ai      = new Ass3.Player(100);
            int         aiScore = ai.Score;

            Ass3.Program temp = new Ass3.Program();
            temp.GivePoint(human, ai);
            int actualHumanScore = human.Score;
            int actualAiScore    = ai.Score;

            Assert.AreEqual(humanScore, actualHumanScore);
            Assert.AreEqual(aiScore, actualAiScore);
        }
        public void TestNoDamage()
        {
            Ass3.Player human          = new Ass3.Player(100);
            int         humanOriHealth = human.Health;

            Ass3.Player ai          = new Ass3.Player(100);
            int         aiOriHealth = ai.Health;

            Ass3.Program temp = new Ass3.Program();
            temp.DealDamage(0, human, ai);
            int expectedHumanHealth = human.Health;
            int expectedAiHealth    = ai.Health;

            Assert.AreEqual(expectedHumanHealth, humanOriHealth);
            Assert.AreEqual(expectedAiHealth, aiOriHealth);
        }