public void InputOutputTests()
        {
            var checker = new PasswordChecker();

            var dir        = new DirectoryInfo("../../Tests");
            var filesCount = dir.GetFiles().Count() / 2;

            var inputFilePath  = "../../Tests/test.{0}.in.txt";
            var outputFilePath = "../../Tests/test.{0}.out.txt";

            for (int i = 1; i <= filesCount; i++)
            {
                var input  = new StreamReader(string.Format(inputFilePath, i.ToString("D3"))).ReadToEnd();
                var output = new StreamReader(string.Format(outputFilePath, i.ToString("D3"))).ReadToEnd();

                var expectedAnswer = ulong.Parse(output);

                var answer = checker.GetPasswordsCountByPattern(input);

                Assert.AreEqual(expectedAnswer, answer);
            }
        }