public async Task NonexistentExecutableConnectionStringProvider() { var nonexistentProviderPath = Path.Combine(Path.GetTempPath(), "nonexistentProvider.exe"); using (new TestEnvironmentVariable(ExecutableConnectionStringProvider.CredentialProviderVariableName, nonexistentProviderPath)) { var provider = new ExecutableConnectionStringProvider(Intent); var connectionStringResult = await provider.GetConnectionString(); connectionStringResult.Succeeded.Should().BeFalse(); connectionStringResult.ErrorMessage.Should().Contain("The system cannot find the file specified"); } }
public async Task GetConnectionString() { using (var testDirectory = new DisposableDirectory(FileSystem)) { var providerPath = testDirectory.Path / "provider.bat"; FileSystem.WriteAllBytes(providerPath, Encoding.UTF8.GetBytes(ConnectionStringProviderScript)); using (new TestEnvironmentVariable(ExecutableConnectionStringProvider.CredentialProviderVariableName, providerPath.Path)) { var provider = new ExecutableConnectionStringProvider(Intent); var connectionStringResult = await provider.GetConnectionString(); connectionStringResult.Succeeded.Should().BeTrue(connectionStringResult.ToString()); connectionStringResult.ConnectionString.Should().Be(ConnectionString); } } }