public ProjectInventoryService( ConnectionSettingsRepository inventorySettings, IEventService eventService) { this.inventorySettings = inventorySettings; this.eventService = eventService; }
public void CanUpdate(Guid id, string nameBeforeUpdate, string nameAfterUpdate) { var settingsBeforeUpdate = new ConnectionSettingsA { Id = id, Name = nameBeforeUpdate }; var settingsStoreMock = new Mock <IConnectionSettingsStore>(); settingsStoreMock.Setup(m => m.Load()).Returns(new ConnectionSettings[] { settingsBeforeUpdate }); var repository = new ConnectionSettingsRepository(settingsStoreMock.Object); var factoryMock = new Mock <IBuildProviderStrategy>(); var connectionPool = new ConnectionPool(repository, factoryMock.Object); var settingsToUpdate = new ConnectionSettingsA { Id = id, Name = nameAfterUpdate }; repository.Update(settingsToUpdate); var connection = connectionPool.CurrentConnections.Single(); connection.Settings.Name.ShouldBe(nameAfterUpdate); }
public void WhenSetValidVmInstanceSettings_GetVmInstanceSettingsReturnSameValues() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); repository.SetProjectSettings(new ProjectConnectionSettings() { ProjectId = "pro-1" }); repository.SetVmInstanceSettings("pro-1", new VmInstanceConnectionSettings() { InstanceName = "vm-1", Username = "******", ConnectionBar = RdpConnectionBarState.Pinned, DesktopSize = RdpDesktopSize.ScreenSize, AuthenticationLevel = RdpAuthenticationLevel.RequireServerAuthentication, ColorDepth = RdpColorDepth.DeepColor, AudioMode = RdpAudioMode.DoNotPlay, RedirectClipboard = RdpRedirectClipboard.Enabled, }); var settings = repository.GetVmInstanceSettings("pro-1", "vm-1"); Assert.AreEqual("user-1", settings.Username); Assert.AreEqual(RdpConnectionBarState.Pinned, settings.ConnectionBar); Assert.AreEqual(RdpDesktopSize.ScreenSize, settings.DesktopSize); Assert.AreEqual(RdpAuthenticationLevel.RequireServerAuthentication, settings.AuthenticationLevel); Assert.AreEqual(RdpColorDepth.DeepColor, settings.ColorDepth); Assert.AreEqual(RdpAudioMode.DoNotPlay, settings.AudioMode); Assert.AreEqual(RdpRedirectClipboard.Enabled, settings.RedirectClipboard); }
public ProjectExplorerWindow(IServiceProvider serviceProvider) { InitializeComponent(); this.dockPanel = serviceProvider.GetService <IMainForm>().MainPanel; this.serviceProvider = serviceProvider; this.TabText = this.Text; // // This window is a singleton, so we never want it to be closed, // just hidden. // this.HideOnClose = true; this.vsToolStripExtender.SetStyle( this.toolStrip, VisualStudioToolStripExtender.VsVersion.Vs2015, this.vs2015LightTheme); this.treeView.Nodes.Add(this.rootNode); this.mainForm = serviceProvider.GetService <IMainForm>(); this.eventService = serviceProvider.GetService <IEventService>(); this.jobService = serviceProvider.GetService <IJobService>(); this.projectInventoryService = serviceProvider.GetService <ProjectInventoryService>(); this.settingsRepository = serviceProvider.GetService <ConnectionSettingsRepository>(); this.authService = serviceProvider.GetService <IAuthorizationAdapter>(); this.remoteDesktopService = serviceProvider.GetService <IRemoteDesktopService>(); this.eventService.BindAsyncHandler <ProjectInventoryService.ProjectAddedEvent>(OnProjectAdded); this.eventService.BindHandler <ProjectInventoryService.ProjectDeletedEvent>(OnProjectDeleted); this.eventService.BindHandler <RemoteDesktopConnectionSuceededEvent>(OnRdpConnectionSucceeded); this.eventService.BindHandler <RemoteDesktopWindowClosedEvent>(OnRdpConnectionClosed); }
public void WhenBaseKeyDoesNotExist_ListProjectSettingsReturnsEmptyList() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); var projects = repository.ListProjectSettings(); Assert.IsFalse(projects.Any()); }
public void WhenProjectIdDoesNotExist_GetVmInstanceSettingsThrowsKeyNotFoundException() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); Assert.Throws <KeyNotFoundException>(() => { repository.GetVmInstanceSettings("nonexisting-project", "vm-id"); }); }
internal ProjectNode(ConnectionSettingsRepository settingsRepository, string projectId) : base( projectId, IconIndex, settingsRepository.GetProjectSettings(projectId), settings => settingsRepository.SetProjectSettings((ProjectConnectionSettings)settings), null) { this.settingsRepository = settingsRepository; }
public void SetUp() { hkcu.DeleteSubKeyTree(TestKeyPath, false); var baseKey = hkcu.CreateSubKey(TestKeyPath); this.projectRepository = new ProjectRepository(baseKey); this.repository = new ConnectionSettingsRepository( this.projectRepository); }
public void WhenIdDoesNotExist_GetProjectSettingsReturnsDefaults() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); Assert.Throws <KeyNotFoundException>(() => { repository.GetProjectSettings("some-project"); }); }
public void WhenBaseKeyIsEmpty_SettingsAreEmpty() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); var settings = repository.GetSettings(); Assert.IsNull(settings.Username); Assert.IsNull(settings.Password); Assert.IsNull(settings.Domain); }
public void SetUp() { hkcu.DeleteSubKeyTree(TestKeyPath, false); var repository = new ConnectionSettingsRepository(hkcu.CreateSubKey(TestKeyPath)); repository.SetProjectSettings(new ProjectConnectionSettings() { ProjectId = "project-1", Domain = "project-domain" }); this.service = new ConnectionSettingsService(repository); }
public void WhenZoneIdDoesNotExist_GetZoneSettingsReturnsDefaults() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); repository.SetProjectSettings(new ProjectConnectionSettings() { ProjectId = "pro-1" }); var settings = repository.GetZoneSettings("pro-1", "some-zone"); Assert.AreEqual("some-zone", settings.ZoneId); }
public void WhenVmInstanceIdDoesNotExist_GetVmInstanceSettingsReturnsDefaults() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); repository.SetProjectSettings(new ProjectConnectionSettings() { ProjectId = "pro-1" }); var settings = repository.GetVmInstanceSettings("pro-1", "some-vm"); Assert.AreEqual("some-vm", settings.InstanceName); Assert.IsNull(settings.Username); }
public void CanAdd() { var settingsStoreMock = new Mock <IConnectionSettingsStore>(); settingsStoreMock.Setup(m => m.Load()).Returns(new ConnectionSettings[] { }); var repository = new ConnectionSettingsRepository(settingsStoreMock.Object); var factoryMock = new Mock <IBuildProviderStrategy>(); var connectionPool = new ConnectionPool(repository, factoryMock.Object); repository.Add(new ConnectionSettingsA()); connectionPool.CurrentConnections.Count().ShouldBe(1); }
public void WhenSettingsSaved_GetSettingsReturnsData() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); var originalSettings = new ConnectionSettings() { Username = "******" }; repository.SetSettings(originalSettings); var settings = repository.GetSettings(); Assert.AreEqual(originalSettings.Username, settings.Username); }
public void WhenProjectSettingsSaved_ProjectReturnedInListProjects() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); var originalSettings = new ProjectConnectionSettings() { ProjectId = "pro-1", Username = "******" }; repository.SetProjectSettings(originalSettings); var projects = repository.ListProjectSettings(); Assert.AreEqual(1, projects.Count()); }
public void SetUp() { hkcu.DeleteSubKeyTree(TestKeyPath, false); var projectRepository = new ProjectRepository(hkcu.CreateSubKey(TestKeyPath)); var settingsRepository = new ConnectionSettingsRepository(projectRepository); this.service = new ConnectionSettingsService(settingsRepository); // Set some initial project settings. projectRepository.AddProject(new ProjectLocator(SampleProjectId)); var projectSettings = settingsRepository.GetProjectSettings(SampleProjectId); projectSettings.RdpDomain.Value = "project-domain"; settingsRepository.SetProjectSettings(projectSettings); }
public void WhenSetValidZoneSettings_GetZoneSettingsReturnSameValues() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); repository.SetProjectSettings(new ProjectConnectionSettings() { ProjectId = "pro-1" }); repository.SetZoneSettings("pro-1", new ZoneConnectionSettings() { ZoneId = "zone-1", Username = "******" }); Assert.AreEqual("user-1", repository.GetZoneSettings("pro-1", "zone-1").Username); }
public void SetUp() { hkcu.DeleteSubKeyTree(TestKeyPath, false); var projectRepository = new ProjectRepository( hkcu.CreateSubKey(TestKeyPath), new Mock <IEventService>().Object); var settingsRepository = new ConnectionSettingsRepository(projectRepository); this.service = new ConnectionSettingsService(settingsRepository); // Set some initial project settings. projectRepository.AddProjectAsync(SampleProjectId).Wait(); var projectSettings = settingsRepository.GetProjectSettings(SampleProjectId); projectSettings.Domain.Value = "project-domain"; settingsRepository.SetProjectSettings(projectSettings); }
public void WhenProjectSettingsDeleted_GetProjectSettingsThrowsKeyNotFoundException() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); var originalSettings = new ProjectConnectionSettings() { ProjectId = "pro-1", Username = "******" }; repository.SetProjectSettings(originalSettings); repository.DeleteProjectSettings(originalSettings.ProjectId); Assert.Throws <KeyNotFoundException>(() => { repository.GetProjectSettings(originalSettings.ProjectId); }); }
public void WhenProjectSettingsDeleted_VmInstanceSettingsAreDeletedToo() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); repository.SetProjectSettings(new ProjectConnectionSettings() { ProjectId = "pro-1" }); repository.SetVmInstanceSettings("pro-1", new VmInstanceConnectionSettings() { InstanceName = "vm-1", Username = "******" }); repository.DeleteProjectSettings("pro-1"); Assert.Throws <KeyNotFoundException>(() => { repository.GetVmInstanceSettings("pro-1", "vm-1"); }); }
public void WhenProjectSettingsSavedTwice_GetProjectSettingsReturnsLatestData() { var baseKey = hkcu.CreateSubKey(TestKeyPath); var repository = new ConnectionSettingsRepository(baseKey); var originalSettings = new ProjectConnectionSettings() { ProjectId = "pro-1", Username = "******" }; repository.SetProjectSettings(originalSettings); originalSettings.Username = "******"; repository.SetProjectSettings(originalSettings); var settings = repository.GetProjectSettings(originalSettings.ProjectId); Assert.AreEqual(originalSettings.ProjectId, settings.ProjectId); Assert.AreEqual(originalSettings.Username, settings.Username); }