added some tests for the cred record loader

This commit is contained in:
David Sparer
2017-04-06 08:54:10 -06:00
parent 8439d6d3aa
commit 224d2987db
3 changed files with 41 additions and 1 deletions

View File

@@ -0,0 +1,40 @@
using System.Collections.Generic;
using mRemoteNG.Config;
using mRemoteNG.Config.DataProviders;
using mRemoteNG.Config.Serializers;
using mRemoteNG.Credential;
using NSubstitute;
using NUnit.Framework;
namespace mRemoteNGTests.Config
{
public class CredentialRecordLoaderTests
{
private CredentialRecordLoader _credentialRecordLoader;
private IDataProvider<string> _dataProvider;
private IDeserializer<string, IEnumerable<ICredentialRecord>> _deserializer;
[SetUp]
public void Setup()
{
_dataProvider = Substitute.For<IDataProvider<string>>();
_deserializer = Substitute.For<IDeserializer<string, IEnumerable<ICredentialRecord>>>();
_credentialRecordLoader = new CredentialRecordLoader(_dataProvider, _deserializer);
}
[Test]
public void LoadsFromDataProvider()
{
_credentialRecordLoader.Load();
_dataProvider.Received(1).Load();
}
[Test]
public void DeserializesDataFromDataProvider()
{
_dataProvider.Load().Returns("mydata");
_credentialRecordLoader.Load();
_deserializer.Received(1).Deserialize("mydata");
}
}
}

View File

@@ -111,6 +111,7 @@
<Compile Include="App\UpdaterTests.cs" />
<Compile Include="BinaryFileTests.cs" />
<Compile Include="Config\CredentialHarvesterTests.cs" />
<Compile Include="Config\CredentialRecordLoaderTests.cs" />
<Compile Include="Config\Serializers\ConfConsEnsureConnectionsHaveIdsTests.cs" />
<Compile Include="Config\Serializers\CredentialProviderSerializerTests.cs" />
<Compile Include="Config\Serializers\CredentialSerializers\XmlCredentialPasswordDecryptorDecoratorTests.cs" />

View File

@@ -18,7 +18,6 @@ namespace mRemoteNG.Credential.Repositories
public ICredentialRepositoryConfig Config { get; }
public IList<ICredentialRecord> CredentialRecords { get; }
public IKeyProvider PasswordRequestor { get; set; } = new PasswordForm("", false);
public bool IsLoaded { get; private set; }
public XmlCredentialRepository(ICredentialRepositoryConfig config, CredentialRecordSaver credentialRecordSaver, CredentialRecordLoader credentialRecordLoader)