public void SessionTest_FollowBetPlacementIsResetOnNewShoe_Test() { StrategySimulator.App.GameBaccaratViewModel.NShoesInt = 2; StrategySimulator.App.StrategizeBaccaratViewModel.FollowLengthInt = 2; StrategySimulator.App.StrategizeBaccaratViewModel.BetPlacementStrategyOptionPickedIndex = (int)StrategiesBaccaratTypes.Follow; StrategySimulator.App.StrategizeBaccaratViewModel.BetProgressionOptionPickedIndex = (int)BetProgressionTypes.Martingale; StrategySimulator.App.StrategizeBaccaratViewModel.IsResetProgressionAfterShoe = true; StrategySimulator.App.GameBaccaratViewModel.IsShuffle = false; StrategySimulator.App.GameBaccaratViewModel.IsBurn = false; StrategySimulator.App.GameBaccaratViewModel.IsNewCards = false; shoe = new Shoe(GameBaccaratTest.Prepare1DeckShoe5()); session.SetShoe(shoe); session.PlaySession(); Assert.AreEqual(2, session.shoeResults.Count); Assert.AreEqual(4, session.shoeResults[0][11].CoupBet.UnitBet); Assert.AreEqual(4, session.shoeResults[1][11].CoupBet.UnitBet); Assert.AreEqual(-5M, Convert.ToDecimal(session.ItemsShoe[0].ScoreTotal)); Assert.AreEqual(-10M, Convert.ToDecimal(session.ItemsShoe[1].ScoreTotal)); // note that this would be -8 if Follow_BetPlacement were not reset to none at top of new shoe }
public void StrategyMultiTest_ThreeStrategies_Test() { cards = GameBaccaratTest.Prepare1DeckShoe5(); PrepareGame(); // Strategy set 1 myStrategy[0].CustomPattern_Pattern = Utilities.ParseBetPlacementString("btbp"); myStrategy[0].CustomPattern_BetPlacement = OutcomesBaccaratCoup.P; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; // Strategy set 2 myStrategy[1].Streaks_Length = 2; myStrategy[1].Streaks_Target = OutcomesBaccaratCoup.P; myStrategy[1].Streaks_BetPlacement = OutcomesBaccaratCoup.B; myStrategy[1].StrategyBaccaratType = StrategiesBaccaratTypes.Streaks; strategyMultiWrapper.MyStrategy[1] = myStrategy[1]; // Strategy set 3 myStrategy[2].CustomPattern_Pattern = Utilities.ParseBetPlacementString("b"); myStrategy[2].CustomPattern_BetPlacement = OutcomesBaccaratCoup.B; myStrategy[2].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[2] = myStrategy[2]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(1, score.UnitPlayerWin); Assert.AreEqual(3, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(4, score.UnitWin); Assert.AreEqual((decimal)3.85M, score.DollarWin); Assert.AreEqual(2, score.UnitLoss); Assert.AreEqual((decimal)2.00M, score.DollarLoss); Assert.AreEqual(6, score.UnitBet); Assert.AreEqual(6, score.NumberBet); Assert.AreEqual(game.Results[11].TotalDollarScore, score.TotalScore); Assert.AreEqual(1.85M, game.Results[11].TotalDollarScore); Assert.AreEqual(OutcomesBaccaratCoup.None, game.Results[0].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[1].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.None, game.Results[2].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[3].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.P, game.Results[4].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[5].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[6].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.None, game.Results[7].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[8].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[9].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.None, game.Results[10].CoupBet.BetPlacement); Assert.AreEqual(OutcomesBaccaratCoup.B, game.Results[11].CoupBet.BetPlacement); }
public void MoneyManagementShoe_Streaks_TakeProfit_1_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_AllB(); PrepareGame(); MoneyManagementInitialize(); myMoneyManagement.ShoeTakeProfit = 2; myStrategy[0].Streaks_Target = OutcomesBaccaratCoup.B; myStrategy[0].Streaks_Length = 3; myStrategy[0].Streaks_BetPlacement = OutcomesBaccaratCoup.B; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.Streaks; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(3, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(3, score.UnitWin); Assert.AreEqual((decimal)2.85, score.DollarWin); Assert.AreEqual(0, score.UnitLoss); Assert.AreEqual((decimal)0, score.DollarLoss); Assert.AreEqual(3, score.UnitBet); Assert.AreEqual(3, score.NumberBet); Assert.AreEqual(game.Results[5].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal)2.85M, score.TotalScore); for (int i = 0; i < 3; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[3].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[4].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[5].OutcomeBet); for (int i = 6; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void SessionTest_ProgressionIsNotResetOnNewShoe_Test() { Setup2ShoesBetPAlwaysMartingale(); StrategySimulator.App.StrategizeBaccaratViewModel.IsResetProgressionAfterShoe = false; shoe = new Shoe(GameBaccaratTest.Prepare1DeckShoe_AllB()); session.SetShoe(shoe); session.PlaySession(); Assert.AreEqual(2, session.shoeResults.Count); Assert.AreEqual(2048, session.shoeResults[0][11].CoupBet.UnitBet); Assert.AreEqual(8388608, session.shoeResults[1][11].CoupBet.UnitBet); Assert.AreEqual(-4095M, Convert.ToDecimal(session.ItemsShoe[0].ScoreTotal)); Assert.AreEqual(-16777215, Convert.ToDecimal(session.ItemsShoe[1].ScoreTotal)); }
public void MoneyManagementShoe_Custom_StopLoss_2_Test() { cards = GameBaccaratTest.Prepare1DeckShoe5(); PrepareGame(); MoneyManagementInitialize(); myMoneyManagement.ShoeStopLoss = 2; myStrategy[0].CustomPattern_Pattern = Utilities.ParseBetPlacementString("b"); myStrategy[0].CustomPattern_BetPlacement = OutcomesBaccaratCoup.B; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(0, score.UnitWin); Assert.AreEqual((decimal)0.00, score.DollarWin); Assert.AreEqual(2, score.UnitLoss); Assert.AreEqual((decimal)2, score.DollarLoss); Assert.AreEqual(2, score.UnitBet); Assert.AreEqual(2, score.NumberBet); Assert.AreEqual(game.Results[6].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 2.00M, score.TotalScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Push, game.Results[1].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[2].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[3].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[4].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[5].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[6].OutcomeBet); for (int i = 7; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void MoneyManagementBankroll_BankerAlways_ProgressionResetTest() { cards = GameBaccaratTest.Prepare1DeckShoe_AllP(); PrepareGame(); MoneyManagementInitialize(); myMoneyManagement.Bankroll = 9; myBetProgression[0].CustomBetProgression = Utilities.ParseBetProgressionString("1.2.3.4"); myBetProgression[0].ResetAfterProgressionMax = true; myBetProgression[0].BetProgressionType = BetProgressionTypes.Custom; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.BankerAlways; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(0, score.UnitWin); Assert.AreEqual((decimal)0, score.DollarWin); Assert.AreEqual(6, score.UnitLoss); Assert.AreEqual((decimal)6, score.DollarLoss); Assert.AreEqual(6, score.UnitBet); Assert.AreEqual(3, score.NumberBet); Assert.AreEqual(game.Results[2].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 6.00M, score.TotalScore); for (int i = 0; i < 3; i++) { Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[i].OutcomeBet); } for (int i = 3; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void MoneyManagementBankroll_Follow_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_TerribleTwos(); PrepareGame(); MoneyManagementInitialize(); myStrategy[0].Follow_Length = 2; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.Follow; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(0, score.UnitWin); Assert.AreEqual((decimal)0, score.DollarWin); Assert.AreEqual(5, score.UnitLoss); Assert.AreEqual((decimal)5, score.DollarLoss); Assert.AreEqual(5, score.UnitBet); Assert.AreEqual(5, score.NumberBet); Assert.AreEqual(game.Results[7].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 5.00M, score.TotalScore); for (int i = 0; i < 3; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } for (int i = 3; i < 8; i++) { Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[i].OutcomeBet); } for (int i = 8; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void MoneyManagementShoe_Custom_TakeProfit_1_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_AllB(); PrepareGame(); MoneyManagementInitialize(); myStrategy[0].CustomPattern_Pattern = Utilities.ParseBetPlacementString("b"); myStrategy[0].CustomPattern_BetPlacement = OutcomesBaccaratCoup.B; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(6, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(6, score.UnitWin); Assert.AreEqual((decimal)5.70, score.DollarWin); Assert.AreEqual(0, score.UnitLoss); Assert.AreEqual((decimal)0, score.DollarLoss); Assert.AreEqual(6, score.UnitBet); Assert.AreEqual(6, score.NumberBet); Assert.AreEqual(game.Results[6].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal)5.70M, score.TotalScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); for (int i = 1; i < 7; i++) { Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[i].OutcomeBet); } for (int i = 7; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void MoneyManagementBankroll_CustomOpposite_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_AllB(); PrepareGame(); MoneyManagementInitialize(); myStrategy[0].CustomOpposite_Length = 1; // N=1 : same as normal Repeat for shoes without ties myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.CustomOpposite; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(0, score.UnitWin); Assert.AreEqual((decimal)0, score.DollarWin); Assert.AreEqual(5, score.UnitLoss); Assert.AreEqual((decimal)5, score.DollarLoss); Assert.AreEqual(5, score.UnitBet); Assert.AreEqual(5, score.NumberBet); Assert.AreEqual(game.Results[5].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 5.00M, score.TotalScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); for (int i = 1; i < 6; i++) { Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[i].OutcomeBet); } for (int i = 6; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void MoneyManagementShoe_OTB4L_StopLoss_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_AllP(); PrepareGame(); MoneyManagementInitialize(); myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.OTB4L; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(0, score.UnitWin); Assert.AreEqual((decimal)0.00, score.DollarWin); Assert.AreEqual(5, score.UnitLoss); Assert.AreEqual((decimal)5, score.DollarLoss); Assert.AreEqual(5, score.UnitBet); Assert.AreEqual(5, score.NumberBet); Assert.AreEqual(game.Results[6].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 5.00M, score.TotalScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[1].OutcomeBet); for (int i = 2; i < 7; i++) { Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[i].OutcomeBet); } for (int i = 7; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void MoneyManagementShoe_CustomOpposite_TakeProfit_Test() { cards = GameBaccaratTest.Prepare1DeckShoe1(); PrepareGame(); MoneyManagementInitialize(); myMoneyManagement.ShoeTakeProfit = 4; myStrategy[0].CustomOpposite_Length = 1; // N=1 : same as normal Repeat for shoes without ties myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.CustomOpposite; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(3, score.UnitPlayerWin); Assert.AreEqual(3, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(6, score.UnitWin); Assert.AreEqual((decimal)5.85, score.DollarWin); Assert.AreEqual(1, score.UnitLoss); Assert.AreEqual((decimal)1, score.DollarLoss); Assert.AreEqual(7, score.UnitBet); Assert.AreEqual(7, score.NumberBet); Assert.AreEqual(game.Results[7].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal)4.85M, score.TotalScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[1].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[2].OutcomeBet); for (int i = 3; i < 8; i++) { Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[i].OutcomeBet); } Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[8].OutcomeBet); }
public void MoneyManagementBankroll_RepeatLastDecision_Test() { cards = GameBaccaratTest.Prepare1DeckShoe1(); PrepareGame(); MoneyManagementInitialize(); myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.Repeat; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(1, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(1, score.UnitWin); Assert.AreEqual((decimal)1, score.DollarWin); Assert.AreEqual(6, score.UnitLoss); Assert.AreEqual((decimal)6, score.DollarLoss); Assert.AreEqual(7, score.UnitBet); Assert.AreEqual(7, score.NumberBet); Assert.AreEqual(game.Results[7].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 5.00M, score.TotalScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[1].OutcomeBet); Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[2].OutcomeBet); for (int i = 3; i < 8; i++) { Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[i].OutcomeBet); } Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[8].OutcomeBet); }
public void MoneyManagementShoe_BankerAlways_TakeProfit_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_AllB(); PrepareGame(); MoneyManagementInitialize(); myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.BankerAlways; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(6, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(6, score.UnitWin); Assert.AreEqual((decimal)5.70, score.DollarWin); Assert.AreEqual(0, score.UnitLoss); Assert.AreEqual((decimal)0, score.DollarLoss); Assert.AreEqual(6, score.UnitBet); Assert.AreEqual(6, score.NumberBet); Assert.AreEqual(game.Results[5].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal)5.70M, score.TotalScore); for (int i = 0; i < 6; i++) { Assert.AreEqual(OutcomesLastCoupBet.Win, game.Results[i].OutcomeBet); } for (int i = 6; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }
public void SessionTest_CustomOppositeLengthsAreSetCorrectly_Test() { shoe = new Shoe(GameBaccaratTest.Prepare1DeckShoe_AllB()); session.SetShoe(shoe); StrategySimulator.App.StrategizeSetNumber = 0; StrategySimulator.App.StrategizeBaccaratViewModel.BetPlacementStrategyOptionPickedIndex = (int)StrategiesBaccaratTypes.Opposite; session.PlaySession(); Assert.AreEqual(1, session.GetCustomOppositeLength(0)); StrategySimulator.App.StrategizeSetNumber = 0; StrategySimulator.App.StrategizeBaccaratViewModel.BetPlacementStrategyOptionPickedIndex = (int)StrategiesBaccaratTypes.OTB4L; session.PlaySession(); Assert.AreEqual(2, session.GetCustomOppositeLength(0)); StrategySimulator.App.StrategizeSetNumber = 0; StrategySimulator.App.StrategizeBaccaratViewModel.CustomOppositeLength = "5"; StrategySimulator.App.StrategizeBaccaratViewModel.BetPlacementStrategyOptionPickedIndex = (int)StrategiesBaccaratTypes.CustomOpposite; session.PlaySession(); Assert.AreEqual(5, session.GetCustomOppositeLength(0)); }
public void MoneyManagementBankrollMulti_AllStrategySets_Test() { cards = GameBaccaratTest.Prepare1DeckShoe_AllB(); PrepareGame(); MoneyManagementInitialize(); // Strategy set 1 myStrategy[0].CustomPattern_Pattern = Utilities.ParseBetPlacementString("bbbb"); myStrategy[0].CustomPattern_BetPlacement = OutcomesBaccaratCoup.P; myStrategy[0].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[0] = myStrategy[0]; // Strategy set 2 myStrategy[1].CustomPattern_Pattern = Utilities.ParseBetPlacementString("bbb"); myStrategy[1].CustomPattern_BetPlacement = OutcomesBaccaratCoup.P; myStrategy[1].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[1] = myStrategy[1]; // Strategy set 3 myStrategy[2].CustomPattern_Pattern = Utilities.ParseBetPlacementString("bb"); myStrategy[2].CustomPattern_BetPlacement = OutcomesBaccaratCoup.P; myStrategy[2].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[2] = myStrategy[2]; // Strategy set 4 myStrategy[3].CustomPattern_Pattern = Utilities.ParseBetPlacementString("b"); myStrategy[3].CustomPattern_BetPlacement = OutcomesBaccaratCoup.P; myStrategy[3].StrategyBaccaratType = StrategiesBaccaratTypes.CustomPattern; strategyMultiWrapper.MyStrategy[3] = myStrategy[3]; strategy = strategyMultiWrapper.GetStrategyMultiWrapper(); strategy(game.Results, score, score.TotalScore, mmShoe, mmBankroll); Assert.AreEqual(0, score.UnitPlayerWin); Assert.AreEqual(0, score.UnitBankerWin); Assert.AreEqual(0, score.UnitTieWin); Assert.AreEqual(0, score.UnitWin); Assert.AreEqual((decimal)0, score.DollarWin); Assert.AreEqual(5, score.UnitLoss); Assert.AreEqual((decimal)5, score.DollarLoss); Assert.AreEqual(5, score.UnitBet); Assert.AreEqual(5, score.NumberBet); Assert.AreEqual(game.Results[5].TotalDollarScore, score.TotalScore); Assert.AreEqual((decimal) - 5.00M, game.Results[5].TotalDollarScore); Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[0].OutcomeBet); for (int i = 1; i < 6; i++) { Assert.AreEqual(OutcomesLastCoupBet.Loss, game.Results[i].OutcomeBet); } for (int i = 6; i < 12; i++) { Assert.AreEqual(OutcomesLastCoupBet.None, game.Results[i].OutcomeBet); } }