コード例 #1
0
ファイル: SettingsHelper.cs プロジェクト: mavenius/SubSonic8
        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;
            }
        }
コード例 #2
0
        public async Task Populate_StorageServiceReturnsANotNullObject_SetsTheObtainedObjectAsTheCurrentConfiguration()
        {
            var configuration = new Subsonic8Configuration();

            _mockStorageService.LoadFunc = t => configuration;

            await _subject.Populate();

            _subject.Configuration.Should().Be(configuration);
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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();
        }