public async Task A_successful_result_is_being_returned() { var credentialStorage = new CredentialStorage(Substitute.For <ISecureStorageUtility>()); var credentials = new Credentials("foo", "bar"); var result = await credentialStorage.SaveCredentialsAsync(credentials) .ConfigureAwait(false); result.IsSuccessful.ShouldBeTrue(); }
public async Task The_Password_is_being_saved() { var secureStorageUtility = Substitute.For <ISecureStorageUtility>(); var credentialStorage = new CredentialStorage(secureStorageUtility); var credentials = new Credentials( Guid.NewGuid().ToString(), Guid.NewGuid().ToString() ); await credentialStorage.SaveCredentialsAsync(credentials).ConfigureAwait(false); await secureStorageUtility.Received().SetAsync( Arg.Is(CredentialStorage.SecureStoragePasswordKey), Arg.Is(credentials.Password) ).ConfigureAwait(false); }
public ICredStashReader Build() { if (_dynamoDbClient == null) { _dynamoDbClient = new AmazonDynamoDBClient(); } if (_keyManagementServiceClient == null) { _keyManagementServiceClient = new AmazonKeyManagementServiceClient(); } if (_credStashConfig == null) { _credStashConfig = CredStashConfig.Default(); } var credentialStorage = new CredentialStorage(_credStashConfig, _dynamoDbClient); var masterKeyStorage = new MasterKeyStorage(_keyManagementServiceClient); return(new CredStashReader(credentialStorage, masterKeyStorage, new HmacSha256Verifier(), new AesCrypto())); }
public async Task An_result_with_that_exception_is_being_returned() { var secureStorageUtility = Substitute.For <ISecureStorageUtility>(); var exceptionMessage = Guid.NewGuid().ToString(); var exception = new Exception(exceptionMessage); secureStorageUtility.SetAsync(Arg.Any <string>(), Arg.Any <string>()) .Throws(exception); var credentialStorage = new CredentialStorage(secureStorageUtility); var credentials = new Credentials("foo", "bar"); var result = await credentialStorage.SaveCredentialsAsync(credentials) .ConfigureAwait(false); result.IsSuccessful.ShouldBeFalse(); result.Exception.ShouldBeSameAs(exception); result.ErrorMessage.ShouldBeSameAs(exceptionMessage); }
A_nonesuccessful_result_is_being_returned_when_the_Password_cannot_be_received() { string userName = Guid.NewGuid().ToString(); var secureStorageUtility = Substitute.For <ISecureStorageUtility>(); secureStorageUtility .GetAsync(Arg.Is(CredentialStorage.SecureStorageUserNameKey)) .Returns(userName); secureStorageUtility .GetAsync(Arg.Is(CredentialStorage.SecureStoragePasswordKey)) .Returns(default(string)); var credentialStorage = new CredentialStorage(secureStorageUtility); var result = await credentialStorage.GetCredentialsAsync().ConfigureAwait(false); result.IsSuccessful.ShouldBeFalse(); }
A_successful_result_is_being_returned_when_both_UserName_and_Password_can_be_received() { string userName = Guid.NewGuid().ToString(); string password = Guid.NewGuid().ToString(); var secureStorageUtility = Substitute.For <ISecureStorageUtility>(); secureStorageUtility .GetAsync(Arg.Is(CredentialStorage.SecureStorageUserNameKey)) .Returns(userName); secureStorageUtility .GetAsync(Arg.Is(CredentialStorage.SecureStoragePasswordKey)) .Returns(password); var credentialStorage = new CredentialStorage(secureStorageUtility); var result = await credentialStorage.GetCredentialsAsync().ConfigureAwait(false); result.IsSuccessful.ShouldBeTrue(); result.Value.UserName.ShouldBeSameAs(userName); result.Value.Password.ShouldBeSameAs(password); }
public DefaultApiAuthenticatorImpl(CredentialStorage credentialStorage) { this.credentialStorage = credentialStorage; }
public DefaultApiAuthenticatorImpl() { this.credentialStorage = new MysqlCredentialStorage(); }