public void one_hint()
        {
            var actual = new RemoveHint().Transform(new[] {
                "aa",
                "aa",
                "aa",
                "## Hint",
                "bb",
                "bb",
                "bb",
                "bb",
                "## Bla bla",
                "cc",
                "cc"
            });

            var expected = new[] {
                "aa",
                "aa",
                "aa",
                "## Bla bla",
                "cc",
                "cc"
            };

            CollectionAssert.AreEqual(expected, actual);
        }
        public void multiple_hitns()
        {
            var actual = new RemoveHint().Transform(new[] {
                "1",
                "## Hint",
                "2",
                "## Hint",
                "3",
                "## AAAAAA",
                "4",
                "## Hint",
                "5",
                "## BBBBBBBB",
                "6",
            });

            var expected = new[] {
                "1",
                "## AAAAAA",
                "4",
                "## BBBBBBBB",
                "6",
            };

            CollectionAssert.AreEqual(expected, actual);
        }
        public void hint_at_end()
        {
            var actual = new RemoveHint().Transform(new[] {
                "aa",
                "aa",
                "## Hint",
                "bb",
                "bb",
            });

            var expected = new[] {
                "aa",
                "aa",
            };

            CollectionAssert.AreEqual(expected, actual);
        }
        public void hint_without_content()
        {
            var actual = new RemoveHint().Transform(new[] {
                "aa",
                "bb",
                "## Hint",
                "## Hint",
                "## Hint",
                "cc",
                "dd",
                "ee",
            });

            var expected = new[] {
                "aa",
                "bb",
            };

            CollectionAssert.AreEqual(expected, actual);
        }
        public void no_hits()
        {
            var actual = new RemoveHint().Transform(new[] {
                "## Bla bla",
                "aa",
                "## Bla bla",
                "bb",
                "bb",
                "## Bla bla",
            });

            var expected = new[] {
                "## Bla bla",
                "aa",
                "## Bla bla",
                "bb",
                "bb",
                "## Bla bla",
            };

            CollectionAssert.AreEqual(expected, actual);
        }