public void TestDDStatRollerAllValuesCheck() { IRollable d = new DiceSet(); IRollable dd1 = DiceFactory.CreateDDStatRoller(); ((DiceSet)d).Add(dd1); // populate "not yet found" list List <int> notFound = new List <int>(); notFound.AddRange(new int[] { 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 }); // attempt to find each value for (int i = 1; i < 1000; i++) // arbitrary limit of 10000 maximum tries { int result = d.Roll(); // 3 to 18 notFound.Remove(result); if (notFound.Count <= 0) { break; // all found } } // test Assert.AreEqual <int>(0, notFound.Count, "Some values were not rolled on 3 d6."); }
public static void Main(string[] argv) { // You have a `DiceSet` class which has a list for 6 dice // You can roll all of them with roll() // Check the current rolled numbers with getCurrent() // You can reroll with reroll() // Your task is to roll the dice until all of the dice are 6 DiceSet diceSet = new DiceSet(); Console.WriteLine(diceSet.GetCurrent()); diceSet.Roll(); Console.WriteLine(diceSet.GetCurrent()); Console.WriteLine(diceSet.GetCurrent(5)); diceSet.Reroll(); Console.WriteLine(diceSet.GetCurrent()); diceSet.Reroll(4); Console.WriteLine(diceSet.GetCurrent()); }
public void TestDieSetRoll() { // create dice and set Die d1 = new Die(); Die d2 = new Die(); Die d3 = new Die(); DiceSet set = new DiceSet(); set.Add(d1); set.Add(d2); set.Add(d3); // roll dice bag set.Roll(); // add rolls of dice int total = d1.RollResult + d2.RollResult + d3.RollResult; // test that the set roll matches the dice rolls Assert.AreEqual <int>(total, set.RollResult, "Dieset roll does not match total value of rolled dice."); }