예제 #1
0
        public void TestAllD100Values()
        {
            // create D100
            var d = DiceFactory.CreateD100();

            // populate "not yet found" list
            List <int> notFound = new List <int>();

            //notFound.AddRange(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 });

            for (int i = 1; i <= 100; i++)
            {
                notFound.Add(i);
            }

            // attempt to find each value
            for (int i = 1; i < 10000; i++)            // arbitrary limit of 10000 maximum tries
            {
                int result = d.Roll();                 // 1 To 20
                notFound.Remove(result);
                if (notFound.Count <= 0)
                {
                    break;                     // all found
                }
            }
            // test
            Assert.AreEqual <int>(0, notFound.Count, "Some values were not rolled on a d100.");
        }