public void GivenANumberMask_WhenProcessingASequenceUsingTheMultipleOfThreeMask_ThenItShouldReturnTheCorrectNumberOfMasks()
        {
            var mask    = new MultipleOfThreeMask();
            var numbers = new NumberSequence(30);

            var maskedNumbers = numbers.Process(mask);

            Assert.That(maskedNumbers.Where(n => n.DisplayValue == "C").Count(), Is.EqualTo(11));
        }
        public void GivenANumberMask_WhenProcessingASequenceUsingTheMultipleOfThreeMask_ThenItShouldMaskTheNumbersThatAreMultiplesOfThree()
        {
            var mask    = new MultipleOfThreeMask();
            var numbers = new NumberSequence(3);

            var maskedNumbers = numbers.Process(mask);

            Assert.That(maskedNumbers[0].DisplayValue, Is.EqualTo("C"));
            Assert.That(maskedNumbers[1].DisplayValue, Is.EqualTo("1"));
            Assert.That(maskedNumbers[2].DisplayValue, Is.EqualTo("2"));
            Assert.That(maskedNumbers[3].DisplayValue, Is.EqualTo("C"));
        }