public void TestCreateAReSpinWheel() { // Arrange var strips = new List <IReadOnlyList <int> > { new List <int> { 1, 1, 1 }, new List <int> { -2, -2, -2 }, new List <int> { 3, 3, 3 }, new List <int> { -1, -1, -1 }, new List <int> { 5, 5, 5 } }; // Action var wheel = ParSheet.CreateReSpinWheel(strips, new int[] { 0, 0, 0, 0, 0 }, new List <int[]> { new int[] { 1, 2, 3 }, new int[0], new int[] { 4, 5, 6 }, new int[0], new int[] { 7, 8, 9 } }); //Assert Assert.NotNull(wheel); Assert.AreEqual(wheel[0], new[] { 1, 2, 3 }); Assert.AreEqual(wheel[1], new[] { -2, -2, -2 }); Assert.AreEqual(wheel[2], new[] { 4, 5, 6 }); Assert.AreEqual(wheel[3], new[] { -1, -1, -1 }); Assert.AreEqual(wheel[4], new[] { 7, 8, 9 }); }
private static SummaryData ExecuteFreeSpin(int level, RequestContext <BonusArgs> bonusRequestcontext, FuDaoLeResult result) { var bonus = module.CreateBonus(result); var summData = new SummaryData(); var freeSpinBonus = bonus.Value as FreeSpinBonus; do { summData.FSpinCounter++; var mystery = ParSheet.GetFreeGameMysteryIndex(RandomNumberEngine.NextDouble()); var wheel = ParSheet.CreateWheelForFreeSpin(level, mystery); var freeSpinResult = Engine.ClaimBonus(level, freeSpinBonus, bonusRequestcontext, wheel) as FuDaoLeFreeSpinResult; summData.FSTotalWin += freeSpinResult.Win; if (freeSpinResult.SpinResult.HasBonus) { summData.FgFHit++; } if (freeSpinResult.IsCompleted) { break; } } while (true); return(summData); }
public void TestWheelForFreeGame() { // arrange var reel1 = new List <int> { 1, 1, 1 }; var reel2 = new List <int> { 2, 2, 2 }; var reel3 = new List <int> { 3, 3, 3 }; var reel4 = new List <int> { 4, 4, 4 }; var reel5 = new List <int> { 5, 5, 5 }; var reels = new List <IReadOnlyList <int> > { reel1, reel2, reel3, reel4, reel5 }; // action var wheel = ParSheet.CreateWheel(reels, Config.FreeGameCoinWeighted); //assert Assert.AreEqual(string.Join(',', wheel.Reels[0]), "1,1,1"); Assert.AreEqual(string.Join(',', wheel.Reels[1]), "2,2,2"); Assert.AreEqual(string.Join(',', wheel.Reels[2]), "3,3,3"); Assert.AreEqual(string.Join(',', wheel.Reels[3]), "4,4,4"); Assert.AreEqual(string.Join(',', wheel.Reels[4]), "5,5,5"); }
public void TestCreateAWheel() { // Arrange var strips = new List <IReadOnlyList <int> > { new List <int> { 1, 1, 1 }, new List <int> { 2, 2, 2 }, new List <int> { 3, 3, 3 }, new List <int> { 4, 4, 4 }, new List <int> { 5, 5, 5 } }; // Action var wheel = ParSheet.CreateWheel(strips); //Assert Assert.NotNull(wheel); Assert.AreEqual(wheel[0], new[] { 1, 1, 1 }); Assert.AreEqual(wheel[1], new[] { 2, 2, 2 }); Assert.AreEqual(wheel[2], new[] { 3, 3, 3 }); Assert.AreEqual(wheel[3], new[] { 4, 4, 4 }); Assert.AreEqual(wheel[4], new[] { 5, 5, 5 }); }
public void TestGetAReelStrip() { // action var reelStrips = ParSheet.GetStrips(1); //assert Assert.NotNull(reelStrips); }
public void TestHasWildInReel() { // Arrange var reel1 = new[] { 1, 2, 4 }; var reel2 = new[] { 1, 7, 4 }; //Assert Assert.IsTrue(!ParSheet.HasWild(reel1)); Assert.IsTrue(ParSheet.HasWild(reel2)); }
public void TestGetAReel() { // arrange var strip = new List <int> { 1, 2, 3, 4, 5 }; // action var reel = ParSheet.GetReel(strip); //assert Assert.AreEqual(reel.Length, 3); }
public void TestGetCardAtPosition() { // arrange var strip = new List <int> { 1, 2, 3, 4, 5 }; // action var card = ParSheet.GetCard(strip); //assert Assert.AreEqual(card > 0 && card < 6, true); }
public void TestCreateAFreeSpinWheel() { // Arrange var strips = new List <IReadOnlyList <int> > { new List <int> { 1, 1, 1 }, new List <int> { 2, 2, 2, 2 }, new List <int> { 3, 3, 3, 3 }, new List <int> { 4, 4, 4, 4 }, new List <int> { 5, 5, 5 } }; // Action var wheel1 = ParSheet.CreateExpandWheel(strips, 1); var wheel2 = ParSheet.CreateExpandWheel(strips, 2); var wheel3 = ParSheet.CreateExpandWheel(strips, 3); //Assert Assert.NotNull(wheel1); Assert.NotNull(wheel2); Assert.NotNull(wheel3); Assert.AreEqual(wheel1[0], new[] { 1, 1, 1 }); Assert.AreEqual(wheel1[1], new[] { 10, 10, 10 }); Assert.AreEqual(wheel1[2], new[] { 3, 3, 3 }); Assert.AreEqual(wheel1[3], new[] { 4, 4, 4 }); Assert.AreEqual(wheel1[4], new[] { 5, 5, 5 }); Assert.AreEqual(wheel2[0], new[] { 1, 1, 1 }); Assert.AreEqual(wheel2[1], new[] { 2, 2, 2 }); Assert.AreEqual(wheel2[2], new[] { 10, 10, 10 }); Assert.AreEqual(wheel2[3], new[] { 4, 4, 4 }); Assert.AreEqual(wheel2[4], new[] { 5, 5, 5 }); Assert.AreEqual(wheel3[0], new[] { 1, 1, 1 }); Assert.AreEqual(wheel3[1], new[] { 2, 2, 2 }); Assert.AreEqual(wheel3[2], new[] { 3, 3, 3 }); Assert.AreEqual(wheel3[3], new[] { 10, 10, 10 }); Assert.AreEqual(wheel3[4], new[] { 5, 5, 5 }); }
public void TestGetAReel() { // Arrange var strips = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 }; // Action var reel = ParSheet.CascadeReel(strips, 2, 3); //Assert Assert.NotNull(reel); Assert.AreEqual(reel.strip, new[] { 0, 1, 2 }); Assert.AreEqual(reel.indexSelected, 9); }
public void TestWheelForMainGame() { // arrange var reel1 = new[] { 1, 1, 1 }; var reel2 = new[] { 2, 2, 2 }; var reel3 = new[] { 3, 3, 3 }; var reel4 = new[] { 4, 4, 4 }; var reel5 = new[] { 5, 5, 5 }; var reels = new int[][] { reel1, reel2, reel3, reel4, reel5 }; // action var wheel = ParSheet.wheelForMainGame(reels); //assert Assert.AreEqual(string.Join(',', wheel.Reels[0]), "1,1,1"); Assert.AreEqual(string.Join(',', wheel.Reels[1]), "2,2,2"); Assert.AreEqual(string.Join(',', wheel.Reels[2]), "3,3,3"); Assert.AreEqual(string.Join(',', wheel.Reels[3]), "4,4,4"); Assert.AreEqual(string.Join(',', wheel.Reels[4]), "5,5,5"); }
public void TestCreateAReSpinWheel() { // Arrange var strips = new List <IReadOnlyList <int> > { new List <int> { 1, 1, 1 }, new List <int> { 2, 2, 2, 2 }, new List <int> { 3, 3, 3, 3 }, new List <int> { 4, 4, 4, 4 }, new List <int> { 11, 11, 11 } }; // Action var wheel = ParSheet.CreateReSpinWheel(strips, new List <int[]> { new int[] { 9, 9, 9 }, new int[] { 9, -1, -1, -1 }, new int[] { 9, 9, 9, -1 }, new int[] { -1, 11, -1, -1 }, new int[] { -1, 1, -1 }, }); //Assert Assert.NotNull(wheel); Assert.AreEqual(wheel[0], new[] { 9, 9, 9 }); Assert.AreEqual(wheel[1], new[] { 9, 2, 2, 2 }); Assert.AreEqual(wheel[2], new[] { 9, 9, 9, 3 }); Assert.AreEqual(wheel[3], new[] { 4, 11, 4, 4 }); Assert.AreEqual(wheel[4], new[] { 11, 11, 11 }); }
public void TestWildxpand() { // arrange var wheel = new List <int[]> { new[] { 0, 2, 3 }, new[] { 0, 2, 3 }, new[] { 1, 2, 3 }, new[] { 0, 2, 3 }, new[] { 0, 2, 3 } }; // action var wheel1 = ParSheet.Expand(new[] { false, false, true, false, false }, wheel); var wheel2 = ParSheet.Expand(new[] { false, true, true, false, false }, wheel); var wheel3 = ParSheet.Expand(new[] { false, true, true, true, false }, wheel); //assert Assert.AreEqual(wheel1[0], wheel[0]); Assert.AreEqual(wheel2[0], wheel[0]); Assert.AreEqual(wheel3[0], wheel[0]); Assert.AreEqual(wheel1[1], wheel[1]); Assert.AreEqual(wheel2[1], new[] { 7, 7, 7 }); Assert.AreEqual(wheel3[1], new[] { 7, 7, 7 }); Assert.AreEqual(wheel1[2], new[] { 7, 7, 7 }); Assert.AreEqual(wheel2[2], new[] { 7, 7, 7 }); Assert.AreEqual(wheel3[2], new[] { 7, 7, 7 }); Assert.AreEqual(wheel1[3], wheel[3]); Assert.AreEqual(wheel2[3], wheel[3]); Assert.AreEqual(wheel3[3], new[] { 7, 7, 7 }); Assert.AreEqual(wheel1[4], wheel[4]); Assert.AreEqual(wheel2[4], wheel[4]); Assert.AreEqual(wheel3[4], wheel[4]); }
public int TestGetMysteryIndex(int level, double ratio) => ParSheet.GetMainGameMysteryIndex(ratio);
public decimal TestGetEnvelopeIndex(string reelString) { var reelStrips = reelString.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray(); return(ParSheet.GetEnvelopeIndex(reelStrips)); }
public bool TestCardIsEnvelope(int card) => ParSheet.IsEnvelopeCard(card);
public string TestExpandingWild(string reelString) { var reelStrips = reelString.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray(); return(string.Join(',', ParSheet.ExpandWild(reelStrips))); }
public void TestCreateAReSpinWheel() { // Arrange var previousWheel = new List <int[]> { new int[] { }, new int[] { 7, 7, 7 }, new int[] { }, new int[] { 7, 7, 7 }, new int[] { } }; var expandReels = new bool[] { false, true, false, true, false }; var strips = new List <IReadOnlyList <int> > { new List <int> { 1, 1, 1 }, new List <int> { 2, 2, 2 }, new List <int> { 3, 7, 3 }, new List <int> { 4, 4, 4 }, new List <int> { 5, 5, 5 } }; var strips2 = new List <IReadOnlyList <int> > { new List <int> { 1, 1, 1 }, new List <int> { 2, 2, 2 }, new List <int> { 3, 3, 3 }, new List <int> { 4, 4, 4 }, new List <int> { 5, 5, 5 } }; // Action var wheel = ParSheet.CreateReSpinWheel(strips, previousWheel, expandReels); var wheel1 = ParSheet.CreateReSpinWheel(strips2, previousWheel, expandReels); //Assert Assert.NotNull(wheel); Assert.AreEqual(wheel[0], new[] { 1, 1, 1 }); Assert.AreEqual(wheel[1], new[] { 7, 7, 7 }); Assert.AreEqual(wheel[2], new[] { 7, 7, 7 }); Assert.AreEqual(wheel[3], new[] { 7, 7, 7 }); Assert.AreEqual(wheel[4], new[] { 5, 5, 5 }); Assert.AreEqual(wheel.ExpandReels, new bool[] { false, true, true, true, false }); Assert.NotNull(wheel); Assert.AreEqual(wheel1[0], new[] { 1, 1, 1 }); Assert.AreEqual(wheel1[1], new[] { 7, 7, 7 }); Assert.AreEqual(wheel1[2], new[] { 3, 3, 3 }); Assert.AreEqual(wheel1[3], new[] { 7, 7, 7 }); Assert.AreEqual(wheel1[4], new[] { 5, 5, 5 }); Assert.AreEqual(wheel1.ExpandReels, new bool[] { false, true, false, true, false }); }
public void TestReelsExploding() { // Arrange var wheel = new List <int[]> { new int[] { 1, 1, 1 }, new int[] { 2, 2, 2 }, new int[] { 3, 3, 3 }, new int[] { 4, 4, 4 }, new int[] { 5, 5, 5 }, }; var winPositions1 = new List <WinPosition> { new WinPosition { Line = 0, Symbol = 10, Count = 3, RowPositions = new List <int> { 0, 1, 2, 3, 0 } }, }; var winPositions2 = new List <WinPosition> { new WinPosition { Line = 1, Count = 4, RowPositions = new List <int> { 1, 2, 3, 4, 0 } } }; var winPositions3 = new List <WinPosition> { new WinPosition { Line = 0, Count = 3, Symbol = 10, RowPositions = new List <int> { 0, 1, 2, 3, 0 } }, new WinPosition { Line = 1, Count = 3, RowPositions = new List <int> { 1, 2, 3, 0, 0 } } }; var winPositions4 = new List <WinPosition> { new WinPosition { Line = 0, Count = 3, Symbol = 10, RowPositions = new List <int> { 0, 1, 2, 3, 0 } }, new WinPosition { Line = 1, Count = 5, RowPositions = new List <int> { 1, 2, 3, 1, 2 } } }; // Action var result1 = ParSheet.ExplodeReels(winPositions1, wheel); var result2 = ParSheet.ExplodeReels(winPositions2, wheel); var result3 = ParSheet.ExplodeReels(winPositions3, wheel); var result4 = ParSheet.ExplodeReels(winPositions4, wheel); //Assert Assert.NotNull(result1); Assert.AreEqual(result1, new List <int[]> { new int[] { 1, 1, 1 }, new int[0], new int[0], new int[0], new int[] { 5, 5, 5 } }); Assert.NotNull(result2); Assert.AreEqual(result2, new List <int[]> { new int[0], new int[0], new int[0], new int[0], new int[] { 5, 5, 5 } }); Assert.NotNull(result3); Assert.AreEqual(result3, new List <int[]> { new int[0], new int[0], new int[0], new int[0], new int[] { 5, 5, 5 } }); Assert.NotNull(result4); Assert.AreEqual(result4, new List <int[]> { new int[0], new int[0], new int[0], new int[0], new int[0] }); }