示例#1
0
 public MainFormViewModel(
     Control view,
     AuthSettingsRepository authSettings)
 {
     this.View         = view;
     this.authSettings = authSettings;
 }
示例#2
0
        public void WhenBaseKeyIsEmpty_SettingsAreEmpty()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new AuthSettingsRepository(baseKey);

            var settings = repository.GetSettings();

            Assert.IsNull(settings.Credentials);
        }
示例#3
0
        public void WhenGetAsyncWithUnknownKey_KeyNotFoundExceptionThrown()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new AuthSettingsRepository(baseKey);

            AssertEx.ThrowsAggregateException <KeyNotFoundException>(() =>
            {
                repository.GetAsync <string>("invalidkey");
            });
        }
示例#4
0
        public async Task WhenStoreWithValidKeyAndClear_GetReturnsNull()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new AuthSettingsRepository(baseKey);

            await repository.StoreAsync <string>(repository.CredentialStoreKey, "test");

            await repository.ClearAsync();

            Assert.IsNull(await repository.GetAsync <string>(repository.CredentialStoreKey));
        }
示例#5
0
        public async Task WhenStoreWithValidKey_GetReturnsSameData()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new AuthSettingsRepository(baseKey);

            await repository.StoreAsync <string>(repository.CredentialStoreKey, "test");

            Assert.AreEqual(
                "test",
                await repository.GetAsync <string>(repository.CredentialStoreKey));
        }
 public MainFormViewModel(
     Control view,
     ApplicationSettingsRepository applicationSettings,
     AuthSettingsRepository authSettings,
     AppProtocolRegistry protocolRegistry)
 {
     this.View = view;
     this.applicationSettings = applicationSettings;
     this.authSettings        = authSettings;
     this.protocolRegistry    = protocolRegistry;
 }
        public MainFormViewModel(
            Control view,
            DockPanelColorPalette colorPalette,
            ApplicationSettingsRepository applicationSettings,
            AuthSettingsRepository authSettings)
        {
            this.View         = view;
            this.colorPalette = colorPalette;

            this.applicationSettings = applicationSettings;
            this.authSettings        = authSettings;
        }
示例#8
0
        public void WhenSettingsSaved_GetSettingsReturnsData()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new AuthSettingsRepository(baseKey);

            var originalSettings = repository.GetSettings();

            originalSettings.Credentials.Value = SecureStringExtensions.FromClearText("secure");
            repository.SetSettings(originalSettings);

            var settings = repository.GetSettings();

            Assert.AreEqual(
                "secure",
                settings.Credentials.ClearTextValue);
        }
示例#9
0
        public MainForm(IServiceProvider bootstrappingServiceProvider, IServiceProvider serviceProvider)
        {
            this.serviceProvider     = serviceProvider;
            this.applicationSettings = bootstrappingServiceProvider.GetService <ApplicationSettingsRepository>();
            this.authSettings        = bootstrappingServiceProvider.GetService <AuthSettingsRepository>();
            this.protocolRegistry    = bootstrappingServiceProvider.GetService <AppProtocolRegistry>();

            //
            // Restore window settings.
            //
            var windowSettings = this.applicationSettings.GetSettings();

            if (windowSettings.IsMainWindowMaximized)
            {
                this.WindowState = FormWindowState.Maximized;
                InitializeComponent();
            }
            else if (windowSettings.MainWindowHeight != 0 &&
                     windowSettings.MainWindowWidth != 0)
            {
                InitializeComponent();
                this.Size = new Size(
                    windowSettings.MainWindowWidth,
                    windowSettings.MainWindowHeight);
            }
            else
            {
                InitializeComponent();
            }

            // Set fixed size for the left/right panels.
            this.dockPanel.DockLeftPortion      =
                this.dockPanel.DockRightPortion = (300.0f / this.Width);

            this.checkForUpdatesOnExitToolStripMenuItem.Checked =
                this.applicationSettings.GetSettings().IsUpdateCheckEnabled;
            this.enableAppProtocolToolStripMenuItem.Checked =
                this.protocolRegistry.IsRegistered(IapRdpUrl.Scheme, GetType().Assembly.Location);
        }
示例#10
0
        public MainForm(IServiceProvider serviceProvider)
        {
            this.serviceProvider     = serviceProvider;
            this.applicationSettings = serviceProvider.GetService <ApplicationSettingsRepository>();
            this.authSettings        = serviceProvider.GetService <AuthSettingsRepository>();
            this.inventorySettings   = serviceProvider.GetService <InventorySettingsRepository>();

            //
            // Restore window settings.
            //
            var windowSettings = this.applicationSettings.GetSettings();

            if (windowSettings.IsMainWindowMaximized)
            {
                this.WindowState = FormWindowState.Maximized;
                InitializeComponent();
            }
            else if (windowSettings.MainWindowHeight != 0 &&
                     windowSettings.MainWindowWidth != 0)
            {
                InitializeComponent();
                this.Size = new Size(
                    windowSettings.MainWindowWidth,
                    windowSettings.MainWindowHeight);
            }
            else
            {
                InitializeComponent();
            }

            // Set fixed size for the left/right panels.
            this.dockPanel.DockLeftPortion      =
                this.dockPanel.DockRightPortion = (300.0f / this.Width);

            this.checkForUpdatesOnExitToolStripMenuItem.Checked
                = this.applicationSettings.GetSettings().IsUpdateCheckEnabled;
        }