public void testBuildGameDataThreeDivisonsFourPicksWithLoss() { //Custom input for a game GameSetupModel gs = new GameSetupModel(); gs.maxPermutations = 1000; gs.totalPicks = 4; PrizeLevel pl1 = new PrizeLevel(); pl1.isInstantWin = false; pl1.numCollections = 3; pl1.prizeValue = 100; PrizeLevel pl2 = new PrizeLevel(); pl2.isInstantWin = false; pl2.numCollections = 2; pl2.prizeValue = 50; PrizeLevel pl3 = new PrizeLevel(); pl3.isInstantWin = false; pl3.numCollections = 2; pl3.prizeValue = 25; PrizeLevels pls = new PrizeLevels(); pls.addPrizeLevel(pl1); pls.addPrizeLevel(pl2); pls.addPrizeLevel(pl3); DivisionModel dm1 = new DivisionModel(); dm1.addPrizeLevel(pl1); DivisionModel dm2 = new DivisionModel(); dm2.addPrizeLevel(pl2); DivisionModel dm3 = new DivisionModel(); dm3.addPrizeLevel(pl2); dm3.addPrizeLevel(pl3); DivisionModel dm4 = new DivisionModel(); DivisionsModel dms = new DivisionsModel(); dms.addDivision(dm1); dms.addDivision(dm2); dms.addDivision(dm3); dms.addDivision(dm4); //File Generator FileGenerationService fgs = new FileGenerationService(); fgs.buildGameData(dms, pls, gs, "testBuildGameDataThreeDivisonsFourPicksWithLoss"); }
public void Test_Prize_Level_Assignment() { PrizeLevel pl1 = new PrizeLevel(); pl1.prizeLevel = 10; Assert.IsTrue(pl1.prizeLevel == 10); }
public void Test_Prize_Comparison_Null() { PrizeLevel pl1 = new PrizeLevel(); pl1.prizeValue = 100; Assert.IsTrue(pl1.CompareTo(null) > 0); }
public void Test_Prize_Win_Assignment() { PrizeLevel pl1 = new PrizeLevel(); pl1.isInstantWin = true; Assert.IsTrue(pl1.isInstantWin); }
public void Test_Prize_Value_Assignment() { PrizeLevel pl1 = new PrizeLevel(); pl1.prizeValue = 100; Assert.IsTrue(pl1.prizeValue == 100); }
public void Test_Prize_Collection_Assignment() { PrizeLevel pl1 = new PrizeLevel(); pl1.numCollections = 5; Assert.IsTrue(pl1.numCollections == 5); }
public void Test_Prize_Comparison() { PrizeLevel pl1 = new PrizeLevel(); PrizeLevel pl2 = new PrizeLevel(); pl1.prizeValue = 50; pl2.prizeValue = 100; Assert.IsTrue(pl1.CompareTo(pl2) < 0); }
public void Test_Invalid_Level_Prize_Level() { PrizeLevels pls = new PrizeLevels(); PrizeLevel pl1 = new PrizeLevel(); pls.addPrizeLevel(pl1); Assert.IsTrue(pls.getLevelOfPrize(null) == -1); }
public void Test_Invalid_Add_At_Prize_Level() { PrizeLevels pls = new PrizeLevels(); PrizeLevel pl1 = new PrizeLevel(); pls.addPrizeLevelAt(null, 0); pls.addPrizeLevelAt(pl1, 40); Assert.IsTrue(pls.getNumPrizeLevels() == 0); }
public void Test_Add_Get_Prize_Level() { PrizeLevels pls = new PrizeLevels(); PrizeLevel pl1 = new PrizeLevel(); pls.addPrizeLevel(pl1); Assert.IsTrue(pl1.Equals(pls.getPrizeLevel(0))); }
public override bool Equals(object obj) { if (obj as DivisionModel != null) { bool samePrizeLevel = PrizeLevel.Equals((obj as DivisionModel).PrizeLevel); bool sameMultiplier = Multiplier == (obj as DivisionModel).Multiplier; return(samePrizeLevel && sameMultiplier); } return(false); }
public void testGetPrizeLevelsAtDivision() { DivisionModel dm = new DivisionModel(); for (int i = 0; i < testAmount; i++) { PrizeLevel pl = new PrizeLevel(); pl.prizeValue = 100.0f + i; dm.addPrizeLevel(pl); Assert.IsTrue(dm.getPrizeLevelsAtDivision().Count == i + 1, "incorrect amount of prizes"); } }
public void Test_Remove_Count_Prize_Level() { PrizeLevels pls = new PrizeLevels(); PrizeLevel pl1 = new PrizeLevel(); pls.addPrizeLevel(pl1); pls.removePrizeLevel(0); Assert.IsTrue(pls.getNumPrizeLevels() == 0); }
public void Test_Add_At_Prize_Level() { PrizeLevels pls = new PrizeLevels(); PrizeLevel pl1 = new PrizeLevel(); PrizeLevel pl2 = new PrizeLevel(); pls.addPrizeLevel(pl1); pls.addPrizeLevelAt(pl2, 0); Assert.IsTrue(pls.getLevelOfPrize(pl2) == 0); }
public void testGetPrizeLevel() { DivisionModel dm = new DivisionModel(); for (int i = 0; i < testAmount; i++) { PrizeLevel pl = new PrizeLevel(); pl.prizeValue = 100 + i; dm.addPrizeLevel(pl); Assert.IsTrue(dm.getPrizeLevel(i) != null, "PrizeLevel not added to Division."); Assert.IsTrue(dm.getPrizeLevel(i).prizeValue == 100 + i, "PrizeLevel not correct value."); } }
public void testGetDivisionValue() { DivisionModel dm = new DivisionModel(); double prizeLevel = 0.0f; for (int i = 0; i < testAmount; i++) { PrizeLevel pl = new PrizeLevel(); pl.prizeValue = 100 + i; prizeLevel += pl.prizeValue; dm.addPrizeLevel(pl); Assert.IsTrue(dm.getPrizeLevel(i) != null, "PrizeLevel not added to Division."); Assert.IsTrue(dm.calculateDivisionValue() == prizeLevel, "PrizeLevel not correct value."); } }
public void testBuildGameDataMaxDivison() { GameSetupModel gs = new GameSetupModel(); gs.maxPermutations = 300000; gs.totalPicks = 20; int numPrizeLevels = 12; PrizeLevel[] prizes = new PrizeLevel[numPrizeLevels]; PrizeLevels pls = new PrizeLevels(); for (int i = 0; i < numPrizeLevels; i++) { prizes[i] = new PrizeLevel(); prizes[i].isInstantWin = false; prizes[i].numCollections = i + 1; prizes[i].prizeValue = 100 * i; pls.addPrizeLevel(prizes[i]); } int numberOfDivions = 30; DivisionModel[] divisions = new DivisionModel[numberOfDivions]; DivisionsModel dms = new DivisionsModel(); Random rand = new Random(); for (int i = 0; i < numberOfDivions; i++) { divisions[i] = new DivisionModel(); divisions[i].addPrizeLevel(prizes[rand.Next(0, 12)]); dms.addDivision(divisions[i]); } FileGenerationService fgs = new FileGenerationService(); fgs.buildGameData(dms, pls, gs, "T:\\Work\\JunkOut\\MaxTest.txt"); }
/// <summary> /// For divisions, this adds a prize level to the list of selected prize levels /// The list represents the prize levels selected within the division /// </summary> /// <param name="prizeLevelToAdd"></param> public void addPrizeLevel(PrizeLevel prizeLevelToAdd) { selectedPrizes.Add(prizeLevelToAdd); selectedPrizes.Sort(); }
public static void Send(string mailKey, string text, string player = null, int whichBG = 0, int TextColor = -1, PrizeLevel prize = null) { var serializeKey = $"Mail/{mailKey}"; MarketDay.SetSharedValue($"{serializeKey}/Key", mailKey); MarketDay.SetSharedValue($"{serializeKey}/Text", text); MarketDay.SetSharedValue($"{serializeKey}/TextColor", TextColor); MarketDay.SetSharedValue($"{serializeKey}/BG", whichBG); if (player is not null) { MarketDay.SetSharedValue($"{serializeKey}/Player", player); } if (prize is not null) { MarketDay.SetSharedValue($"{serializeKey}/ObjName", prize.Object); MarketDay.SetSharedValue($"{serializeKey}/Flavor", prize.Flavor); MarketDay.SetSharedValue($"{serializeKey}/Stack", prize.Stack); MarketDay.SetSharedValue($"{serializeKey}/Quality", prize.Quality); } LoadOneMail(mailKey); }
public void testBuildGameDataFiveDivisionsNinePicksWithFailDivision() { GameSetupModel gs = new GameSetupModel(); gs.maxPermutations = 1000; gs.totalPicks = 9; PrizeLevel pl1 = new PrizeLevel(); pl1.isInstantWin = false; pl1.numCollections = 5; pl1.prizeValue = 100; PrizeLevel pl2 = new PrizeLevel(); pl2.isInstantWin = false; pl2.numCollections = 4; pl2.prizeValue = 50; PrizeLevel pl3 = new PrizeLevel(); pl3.isInstantWin = false; pl3.numCollections = 4; pl3.prizeValue = 25; PrizeLevel pl4 = new PrizeLevel(); pl4.isInstantWin = false; pl4.numCollections = 3; pl4.prizeValue = 10; PrizeLevel pl5 = new PrizeLevel(); pl5.isInstantWin = false; pl5.numCollections = 3; pl5.prizeValue = 5; PrizeLevels pls = new PrizeLevels(); pls.addPrizeLevel(pl1); pls.addPrizeLevel(pl2); pls.addPrizeLevel(pl3); pls.addPrizeLevel(pl4); pls.addPrizeLevel(pl5); DivisionModel dm1 = new DivisionModel(); dm1.addPrizeLevel(pl1); DivisionModel dm2 = new DivisionModel(); dm2.addPrizeLevel(pl1); dm2.addPrizeLevel(pl2); DivisionModel dm3 = new DivisionModel(); dm3.addPrizeLevel(pl1); dm3.addPrizeLevel(pl3); DivisionModel dm4 = new DivisionModel(); dm4.addPrizeLevel(pl2); dm4.addPrizeLevel(pl3); DivisionModel dm5 = new DivisionModel(); dm5.addPrizeLevel(pl4); dm5.addPrizeLevel(pl5); DivisionModel dm6 = new DivisionModel(); DivisionsModel dms = new DivisionsModel(); dms.addDivision(dm1); dms.addDivision(dm2); dms.addDivision(dm3); dms.addDivision(dm4); dms.addDivision(dm5); dms.addDivision(dm6); FileGenerationService fgs = new FileGenerationService(); fgs.buildGameData(dms, pls, gs, "testBuildGameDataFiveDivisionsNinePicksWithFail"); }
public void testBuildGameDataFourDivisionsSixPicks() { GameSetupModel gs = new GameSetupModel(); gs.maxPermutations = 1000; gs.totalPicks = 6; PrizeLevel pl1 = new PrizeLevel(); pl1.isInstantWin = false; pl1.numCollections = 3; pl1.prizeValue = 100; PrizeLevel pl2 = new PrizeLevel(); pl2.isInstantWin = false; pl2.numCollections = 3; pl2.prizeValue = 50; PrizeLevel pl3 = new PrizeLevel(); pl3.isInstantWin = false; pl3.numCollections = 3; pl3.prizeValue = 25; PrizeLevels pls = new PrizeLevels(); pls.addPrizeLevel(pl1); pls.addPrizeLevel(pl2); pls.addPrizeLevel(pl3); DivisionModel dm1 = new DivisionModel(); dm1.addPrizeLevel(pl1); dm1.addPrizeLevel(pl2); DivisionModel dm2 = new DivisionModel(); dm2.addPrizeLevel(pl2); dm2.addPrizeLevel(pl3); DivisionModel dm3 = new DivisionModel(); dm3.addPrizeLevel(pl1); dm3.addPrizeLevel(pl3); DivisionModel dm4 = new DivisionModel(); dm4.addPrizeLevel(pl2); DivisionsModel dms = new DivisionsModel(); dms.addDivision(dm1); dms.addDivision(dm2); dms.addDivision(dm3); dms.addDivision(dm4); FileGenerationService fgs = new FileGenerationService(); fgs.buildGameData(dms, pls, gs, "testBuildGameDataFourDivisionsSixPicks"); }
public void testBuildGameDataFourDivisonsFivePicks() { //Custom input for a game GameSetupModel gs = new GameSetupModel(); gs.maxPermutations = 1000; gs.totalPicks = 5; gs.isNearWin = true; gs.nearWins = 2; PrizeLevel pl1 = new PrizeLevel(); pl1.isInstantWin = false; pl1.numCollections = 3; pl1.prizeValue = 100; PrizeLevel pl2 = new PrizeLevel(); pl2.isInstantWin = false; pl2.numCollections = 2; pl2.prizeValue = 50; PrizeLevel pl3 = new PrizeLevel(); pl3.isInstantWin = false; pl3.numCollections = 2; pl3.prizeValue = 25; PrizeLevel pl4 = new PrizeLevel(); pl4.isInstantWin = false; pl4.numCollections = 4; pl4.prizeValue = 10000; PrizeLevel pl5 = new PrizeLevel(); pl5.isInstantWin = false; pl5.numCollections = 3; pl5.prizeValue = 1000; PrizeLevels pls = new PrizeLevels(); pls.addPrizeLevel(pl1); pls.addPrizeLevel(pl2); pls.addPrizeLevel(pl3); pls.addPrizeLevel(pl4); pls.addPrizeLevel(pl5); DivisionModel dm1 = new DivisionModel(); dm1.addPrizeLevel(pl1); DivisionModel dm2 = new DivisionModel(); dm2.addPrizeLevel(pl2); DivisionModel dm3 = new DivisionModel(); dm3.addPrizeLevel(pl2); dm3.addPrizeLevel(pl3); DivisionModel dm4 = new DivisionModel(); dm4.addPrizeLevel(pl5); DivisionModel dm5 = new DivisionModel(); dm5.addPrizeLevel(pl5); dm5.addPrizeLevel(pl2); DivisionsModel dms = new DivisionsModel(); dms.addDivision(dm1); dms.addDivision(dm2); dms.addDivision(dm3); dms.addDivision(dm4); dms.addDivision(dm5); //File Generator FileGenerationService fgs = new FileGenerationService(); fgs.buildGameData(dms, pls, gs, "T:\\Work\\JunkOut\\testBuildGameDataFourDivisonsFivePicks.txt"); }
/// <summary> /// Removes a prize level based on the prize level object passed in /// </summary> /// <param name="prizeLevelToRemove"></param> public void removePrizeLevel(PrizeLevel prizeLevelToRemove) { selectedPrizes.Remove(prizeLevelToRemove); selectedPrizes.Sort(); }