public void Puzzle_6A()
            {
                var calc   = new AnswerCalculataor();
                var result = calc.FInGroups(PuzzleInputs.Puzzle6, calc.CountUnique);

                Assert.Equal(6587, result.Sum());
            }
            public void Puzzle_6B()
            {
                var calc   = new AnswerCalculataor();
                var result = calc.FInGroups(PuzzleInputs.Puzzle6, calc.CountRecurring);

                Assert.Equal(3235, result.Sum());
            }
            public void Should_count_chars_found_in_every_line(IEnumerable <string> input, int recurring)
            {
                var calc   = new AnswerCalculataor();
                var result = calc.CountRecurring(input);

                Assert.Equal(recurring, result);
            }
            public void Should_ignore_duplicates_in_data_4()
            {
                var input  = new[] { "a", "b", "cd", "d", "ab" };
                var calc   = new AnswerCalculataor();
                var result = calc.CountUnique(input);

                Assert.Equal(4, result);
            }
            public void Should_group_input_by_line()
            {
                var input  = new[] { "a", "a", "", "d", "ab", "c" };
                var calc   = new AnswerCalculataor();
                var result = calc.FInGroups(input, calc.CountUnique);

                Assert.Equal(2, result.Count());
                Assert.Equal(1, result.First());
                Assert.Equal(4, result.Skip(1).First());
            }
            public void Example_sum()
            {
                var input = new[]
                {
                    "abc",
                    "",
                    "a", "b", "c",
                    "",
                    "ab", "ac",
                    "",
                    "a", "a", "a", "a",
                    "",
                    "b"
                };

                var calc   = new AnswerCalculataor();
                var result = calc.FInGroups(input, calc.CountUnique);

                Assert.Equal(5, result.Count());
                Assert.Equal(11, result.Sum());
            }