public XmlCredentialRepository(ICredentialRepositoryConfig config, CredentialRecordSaver credentialRecordSaver, CredentialRecordLoader credentialRecordLoader) { if (config == null) { throw new ArgumentNullException(nameof(config)); } if (credentialRecordSaver == null) { throw new ArgumentNullException(nameof(credentialRecordSaver)); } if (credentialRecordLoader == null) { throw new ArgumentNullException(nameof(credentialRecordLoader)); } Config = config; CredentialRecords = new FullyObservableCollection <ICredentialRecord>(); ((FullyObservableCollection <ICredentialRecord>)CredentialRecords).CollectionUpdated += RaiseCredentialsUpdatedEvent; Config.PropertyChanged += (sender, args) => RaiseRepositoryConfigUpdatedEvent(args); _credentialRecordSaver = credentialRecordSaver; _credentialRecordLoader = credentialRecordLoader; }
private ICredentialRepository BuildXmlRepo(ICredentialRepositoryConfig config) { var dataProvider = new FileDataProvider(config.Source); var saver = new CredentialRecordSaver(dataProvider, _serializer); var loader = new CredentialRecordLoader(dataProvider, _deserializer); return(new XmlCredentialRepository(config, saver, loader)); }
public void Setup() { _dataProvider = Substitute.For <IDataProvider <string> >(); _deserializer = Substitute.For <ISecureDeserializer <string, IEnumerable <ICredentialRecord> > >(); _credentialRecordLoader = new CredentialRecordLoader(_dataProvider, _deserializer); }