public KvLoginProvider(IKVStore store, string namespacePrefix = "ULP:", IRandomCharacterGenerator characterGen = null, IHasher hasher = null, IStringVerifier usernameVerifier = null, IStringVerifier passwordVerifier = null)
 {
     _store            = new KeyTransformKVStore(store, new PrefixTransformer(namespacePrefix));
     _usernameVerifier = usernameVerifier ?? new NullStringVerifier();
     _passwordVerifier = passwordVerifier ?? new NullStringVerifier();
     _characterGen     = characterGen ?? new SimpleRandomCharacterGenerator();
     _hasher           = hasher ?? new Md5HasherWithSalt();
 }
Example #2
0
        public void Correctly_generates_random_code()
        {
            MockRepository            mocks = new MockRepository();
            IRandomCharacterGenerator characterGenerator = mocks.CreateMock <IRandomCharacterGenerator>();

            using (mocks.Record())
            {
                Expect.Call(characterGenerator.GetRandomCharacter()).Return('k');
                Expect.Call(characterGenerator.GetRandomCharacter()).Return('w');
                Expect.Call(characterGenerator.GetRandomCharacter()).Return('h');
            }

            using (mocks.Playback())
            {
                ICodeGenerator codeGenerator = new CodeGenerator(characterGenerator);
                string         code          = codeGenerator.GetRandomCode(3);

                Assert.That(code, Is.EqualTo("kwh"));
            }

            mocks.VerifyAll();
        }
Example #3
0
 public CodeGenerator(IRandomCharacterGenerator characterGenerator)
 {
     _characterGenerator = characterGenerator;
 }
Example #4
0
		public CodeGenerator(IRandomCharacterGenerator characterGenerator)
		{
			_characterGenerator = characterGenerator;
		}
Example #5
0
 public HasherWithSalt(HashAlgorithm algorithm, IRandomCharacterGenerator saltGenerator = null)
 {
     _algo      = algorithm;
     _generator = saltGenerator ?? new SimpleRandomCharacterGenerator(16);
 }
 public Md5HasherWithSalt(IRandomCharacterGenerator saltGenerator = null)
     : base(MD5.Create(), saltGenerator)
 {
 }