Пример #1
0
 public IActionResult SaveRequiredPasswordCharactersPolicy(Policy policy, int projectId,
                                                           RequiredPasswordCharactersConfiguration policySettings)
 {
     try
     {
         savePolicyToProjectFactory.Create().Invoke(projectId, policy, policySettings);
         Alert(AlertType.Success, "Policy saved correctly.");
         return(RedirectToAction("GetById", "Projects", new { id = projectId }));
     }
     catch (Exception ex)
     {
         Alert(AlertType.Warning, ex.Message);
         return(View("ErrorPage"));
     }
 }
Пример #2
0
        public void RequiredPasswordCharactersCheckShouldReturnTrue()
        {
            // arrange
            var configuration1 = new RequiredPasswordCharactersConfiguration
            {
                UpperCase = false,
                Digit     = false,
                Special   = true
            };

            var configuration2 = new RequiredPasswordCharactersConfiguration
            {
                UpperCase = true,
                Digit     = false,
                Special   = false
            };

            var configuration3 = new RequiredPasswordCharactersConfiguration
            {
                UpperCase = false,
                Digit     = true,
                Special   = false
            };

            var configuration4 = new RequiredPasswordCharactersConfiguration
            {
                UpperCase = true,
                Digit     = true,
                Special   = true
            };

            // act
            var checkResult1 = Check.RequiredPasswordCharacters(configuration1, "hello!");
            var checkResult2 = Check.RequiredPasswordCharacters(configuration2, "Hello");
            var checkResult3 = Check.RequiredPasswordCharacters(configuration3, "h3llo");
            var checkResult4 = Check.RequiredPasswordCharacters(configuration4, "H3llo!");

            // assert
            Assert.True(checkResult1);
            Assert.True(checkResult2);
            Assert.True(checkResult3);
            Assert.True(checkResult4);
        }
Пример #3
0
        public void RequiredPasswordCharactersConfigurationShouldSerializeAndDeserialize()
        {
            // arrange
            var upperCase     = false;
            var digit         = true;
            var special       = true;
            var configuration = new RequiredPasswordCharactersConfiguration
            {
                UpperCase = upperCase,
                Digit     = digit,
                Special   = special
            };
            var service = new PolicyJsonConvertService();

            // act
            var serialized   = service.Serialize(configuration);
            var deserialized = (RequiredPasswordCharactersConfiguration)service.Deserialize(Policy.RequiredPasswordCharacters, serialized);

            // assert
            Assert.Equal(digit, deserialized.Digit);
            Assert.Equal(special, deserialized.Special);
            Assert.Equal(upperCase, deserialized.UpperCase);
        }
Пример #4
0
 public static bool RequiredPasswordCharacters(RequiredPasswordCharactersConfiguration config, string password)
 {
     return(Implication(config.Digit, password.Any(char.IsDigit)) &&
            Implication(config.Special, password.Any(IsSpecial)) &&
            Implication(config.UpperCase, password.Any(char.IsUpper)));
 }