コード例 #1
0
        public void Load(BinaryReader reader)
        {
            // Get stored policy
            PasswordPolicy policy = PasswordPolicy.Parse(reader);

            // Write policy settings to window
            policy.WriteToWindow(MainWindow);
        }
コード例 #2
0
            public void Should_parse_example_policies(
                string policyString,
                int expectedMin,
                int expectedMax,
                char expectedChar)
            {
                var policy = PasswordPolicy.Parse(policyString);

                Assert.Equal(expectedMin, policy.Min);
                Assert.Equal(expectedMax, policy.Max);
                Assert.Equal(expectedChar, policy.Char);
            }
コード例 #3
0
ファイル: Day2.cs プロジェクト: CodyAWard/adventofcode
        private static string PartB(IEnumerable <string> data)
        {
            var validTotal = 0;

            foreach (var passAndPolicy in data)
            {
                var policy = PasswordPolicy.Parse(passAndPolicy);
                if (policy.IsValidForTobogganCompany())
                {
                    validTotal++;
                }
            }

            return($"{validTotal} Valid Passwords");
        }
コード例 #4
0
            public void Puzzle_2A()
            {
                var inputs = PuzzleInputs.Puzzle2;

                var okPasswords = new ConcurrentBag <int>();

                Parallel.ForEach(inputs, input =>
                {
                    var parts  = input.Split(':');
                    var policy = PasswordPolicy.Parse(parts[0]);
                    if (policy.Evaluate(parts[1].Trim()))
                    {
                        okPasswords.Add(1);
                    }
                });

                Assert.Equal(0, okPasswords.Sum());
            }