public void ScoreThreeOrMoreOfAKind(int[] diceValues, int expectedScore)
        {
            var ruleset = new DefaultRuleset();

            var score = ruleset.Score(diceValues);

            Assert.Equal(expectedScore, score);
        }
        public void ScoreNothing()
        {
            var ruleset = new DefaultRuleset();

            var diceValues = new List <int> {
                2, 2, 3, 3, 4, 6
            };

            var score = ruleset.Score(diceValues);

            Assert.Equal(0, score);
        }
        public void ScoreFives()
        {
            var ruleset = new DefaultRuleset();

            var diceValues = new List <int> {
                4, 2, 2, 3, 4, 5
            };

            var score = ruleset.Score(diceValues);

            Assert.Equal(50, score);
        }
        public void ScoreOnes()
        {
            var ruleset = new DefaultRuleset();

            var diceValues = new List <int> {
                1, 1, 2, 3, 4, 6
            };

            var score = ruleset.Score(diceValues);

            Assert.Equal(200, score);
        }
        public void ScoreThreePairs()
        {
            var ruleset = new DefaultRuleset();

            var diceValues = new List <int> {
                1, 5, 6, 1, 6, 5
            };

            var score = ruleset.Score(diceValues);

            Assert.Equal(1000, score);
        }
        public void ScoreStraight()
        {
            var ruleset = new DefaultRuleset();

            var diceValues = new List <int> {
                1, 2, 3, 4, 5, 6
            };

            var score = ruleset.Score(diceValues);

            Assert.Equal(1800, score);
        }
        public void ScorePartialStraight()
        {
            var ruleset = new DefaultRuleset();

            var diceValues1 = new List <int> {
                4, 3, 1, 2, 5, 5
            };
            var diceValues2 = new List <int> {
                4, 3, 6, 2, 5, 5
            };

            var score1 = ruleset.Score(diceValues1);
            var score2 = ruleset.Score(diceValues2);

            Assert.Equal(900, score1);
            Assert.Equal(900, score2);
        }