public async Task Populate_StorageServiceReturnsANotNullObject_SetsTheObtainedObjectAsTheCurrentConfiguration() { var configuration = new Subsonic8Configuration(); _mockStorageService.LoadFunc = t => configuration; await _subject.Populate(); _subject.Configuration.Should().Be(configuration); }
private void PopulateCredentials(Subsonic8Configuration configuration) { var credentialsFromVault = SettingsHelper.GetCredentialsFromVault(); if (credentialsFromVault == null) { return; } configuration.SubsonicServiceConfiguration.Username = credentialsFromVault.UserName; configuration.SubsonicServiceConfiguration.Password = credentialsFromVault.Password; }
private async Task SetPasswordFromVault(Subsonic8Configuration appConfiguration) { var configuration = appConfiguration.SubsonicServiceConfiguration; var vault = new PasswordVault(); var credentials = GetCredentialsFromVault(vault); if (credentials == null) { if (!string.IsNullOrWhiteSpace(configuration.BaseUrl)) { var legacyCredentials = await GetLegacyCredentials(); if (legacyCredentials != null) { var passwordCredential = new PasswordCredential( PasswordVaultResourceName, legacyCredentials.Item1, legacyCredentials.Item2); vault.Add(passwordCredential); configuration.Username = legacyCredentials.Item1; configuration.Password = legacyCredentials.Item2; await StorageService.Save(appConfiguration); } } } else { configuration.Username = credentials.UserName; configuration.Password = credentials.Password; } }
public async Task SaveSettings_Always_SetsNotificationServiceToTheCurrentOption() { var configuration = new Subsonic8Configuration { ToastsUseSound = true }; _mockStorageService.LoadFunc = t => configuration; await _subject.Populate(); await _subject.SaveSettings(); _mockToastNotificationService.UseSound.Should().BeTrue(); }
public async Task SaveSettings_Always_SetsSubsonicServiceToTheCurrentConfiguration() { var configuration = new Subsonic8Configuration(); _mockStorageService.LoadFunc = t => configuration; await _subject.Populate(); await _subject.SaveSettings(); _mockSubsonicService.Configuration.Should().Be(configuration.SubsonicServiceConfiguration); }
public async Task SaveSettings_Always_SetsNotificationServiceToTheCurrentOption() { var configuration = new Subsonic8Configuration { UseToastNotifications = true }; _mockStorageService.LoadFunc = t => configuration; await _subject.Populate(); _subject.Configuration.SubsonicServiceConfiguration.Username = "******"; _subject.Configuration.SubsonicServiceConfiguration.Password = "******"; await _subject.SaveSettings(); _mockToastNotificationService.EnableNotifications.Should().BeTrue(); }