Esempio n. 1
0
        public SolutionOne()
        {
            var inputList = File.ReadAllLines(FileName).ToList();

            foreach (var inputValue in inputList)
            {
                var splittedInput = inputValue.Split(" ");

                var minCount = Helper.GetMinCount(splittedInput[0]);
                var maxCount = Helper.GetMaxCount(splittedInput[0]);

                var character = Helper.GetMinCount(splittedInput[1], 0, ":");
                var pass      = splittedInput[2];

                var passRule = new PasswordRule
                {
                    MinCount           = int.Parse(minCount),
                    MaxCount           = int.Parse(maxCount),
                    Character          = char.Parse(character),
                    Password           = pass,
                    NumberOfOccurances = pass.Count(x => x == char.Parse(character))
                };

                PasswordRules.Add(passRule);
            }
        }
Esempio n. 2
0
 public PasswordValidation(PasswordRule rule, string password)
 {
     Rule     = rule ?? throw new ArgumentNullException(nameof(rule));
     Password = password ?? throw new ArgumentNullException(nameof(password));;
 }
Esempio n. 3
0
 protected bool Equals(PasswordRule other)
 {
     return(Letter == other.Letter && MinCount == other.MinCount && MaxCount == other.MaxCount);
 }