public void SHOULD_return_value_subtracted_from_main_letter_by_subtrahend()
            {
                var minuend    = Letters.X;
                var subtrahend = Letters.I;

                var sut = new Lib.SubtractionChunk(minuend, subtrahend, 1);

                Assert.That(sut.Value, Is.EqualTo(9));
            }
            public void SHOULD_return_minuend_as_main_letter()
            {
                var minuend    = Letters.X;
                var subtrahend = Letters.I;

                var sut = new Lib.SubtractionChunk(minuend, subtrahend, 1);

                Assert.That(sut.MainLetter, Is.EqualTo(minuend));
            }
            public void SHOULD_throw_ArgumentOutOfRange_exception_if_repetitions_count_not_1(int repetitionsCount)
            {
                var mainLetter = Letters.X;
                var addition   = Letters.I;

                Assert.Throws <ArgumentOutOfRangeException>(() =>
                {
                    var sut = new Lib.SubtractionChunk(mainLetter, addition, repetitionsCount);
                });
            }
            public void SHOULD_throw_exception_if_subtrahend_is_not_valid_neighbour()
            {
                var minuend    = Letters.M;
                var subtrahend = Letters.I;

                Assert.Throws <ArgumentException>(() =>
                {
                    var sut = new Lib.SubtractionChunk(minuend, subtrahend, 1);
                });
            }