Esempio n. 1
0
        public void WinningBlackAndEvenAndStraightTest()
        {
            // Gather bets from player
            int chipsOnBlack    = 25;
            int chipsOnEven     = 100;
            int chipsOnStraight = 100;
            int expectedReward  = chipsOnBlack + chipsOnBlack * 1 + chipsOnEven + chipsOnEven * 1 + chipsOnStraight + chipsOnStraight * 35; // 250 + 35*100 = 3750

            betsHolder.AddPlayerBet(BetDef.BetType.Black, chipsOnBlack);
            betsHolder.AddPlayerBet(BetDef.BetType.Even, chipsOnEven);
            betsHolder.AddPlayerBet(BetDef.BetType.Straight, chipsOnStraight, 2);

            // Spin and gather winning bets
            int        winningNumber = fakeWheelAlwaysReturningNumber2.Spin();
            List <Bet> winningBets   = betsHolder.GetWinningBets(winningNumber);

            // Calculate final win
            int actualReward = WinCalculator.CalculatePlayerWinningAmount(winningBets);

            Assert.AreEqual(expectedReward, actualReward);
        }
Esempio n. 2
0
        public void StraightLose()
        {
            BetsHolder betsHolder = new BetsHolder();

            betsHolder.AddPlayerBet(BetDef.BetType.Straight, chips, 4);
            betsHolder.AddPlayerBet(BetDef.BetType.Straight, chips, 5);

            int        wheelResult = 1;
            List <Bet> winningBets = betsHolder.GetWinningBets(wheelResult);

            Assert.AreEqual(winningBets.Count, 0);
        }
Esempio n. 3
0
        public void StraightWin()
        {
            BetsHolder betsHolder = new BetsHolder();

            betsHolder.AddPlayerBet(BetDef.BetType.Straight, chips, 4);
            betsHolder.AddPlayerBet(BetDef.BetType.Straight, chips, 5);

            int        wheelResults = 4;
            List <Bet> winningBets  = betsHolder.GetWinningBets(wheelResults);

            Assert.AreEqual(1, winningBets.Count);
            winningBets.ForEach(bet => Assert.IsTrue(bet.Numbers.Contains(wheelResults)));
        }
Esempio n. 4
0
        public void RedLose()
        {
            BetsHolder betsHolder = new BetsHolder();

            betsHolder.AddPlayerBet(BetDef.BetType.Red, chips);

            List <int> allPossibleNumbers = GetAllPossibleValues();
            List <int> redNumbers         = BetDef.betFixedNumbers[BetDef.BetType.Red].ToList();

            List <int> allNumbersWithoutRedNumbers = allPossibleNumbers.FindAll(number => !redNumbers.Contains(number));

            foreach (int winningNumber in allNumbersWithoutRedNumbers)
            {
                List <Bet> winningBets = betsHolder.GetWinningBets(winningNumber);

                Assert.AreEqual(0, winningBets.Count);
            }
        }
Esempio n. 5
0
        public void RedWin()
        {
            BetsHolder betsHolder = new BetsHolder();

            betsHolder.AddPlayerBet(BetDef.BetType.Red, chips);

            List <int> redNumbers = BetDef.betFixedNumbers[BetDef.BetType.Red].ToList();

            foreach (int winningNumber in redNumbers)
            {
                List <Bet> winningBets = betsHolder.GetWinningBets(winningNumber);

                Assert.AreEqual(1, winningBets.Count);

                Bet playerBet = betsHolder.PlayerBets.First();
                Assert.IsTrue(playerBet.Numbers.Contains(winningNumber));
            }
        }
Esempio n. 6
0
 internal List <Bet> GetWinningBets(int winningNumber)
 {
     return(betsHolder.GetWinningBets(winningNumber));
 }