public void PrinterMappingWrapper_WithMapping_ExposesProfileWithSameGuid() { var mapping = new PrinterMapping("SomePrinter", "Profile1Guid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); Assert.AreEqual(mapping.ProfileGuid, wrapper.Profile.Guid); }
DeleteProfile_TwoProfiles_ProfileWithPrinterMapping_QueryDeleteProfileWithPrinterMappingReturnsTrue_CurrentProfileGetsDeleted () { var secondProfile = new ConversionProfile(); _settings.ConversionProfiles.Add(secondProfile); _settings.ApplicationSettings.LastUsedProfileGuid = secondProfile.Guid; var printerMapping = new PrinterMapping(); printerMapping.PrinterName = "fake printer"; printerMapping.ProfileGuid = _settings.ApplicationSettings.LastUsedProfileGuid; _settings.ApplicationSettings.PrinterMappings.Add(printerMapping); _profileSettingsViewModel = CreateProfileSettingsViewModel(_settings); _interactionInvoker.HandleMessageInteraction = interaction => { interaction.Response = MessageResponse.Yes; }; _profileSettingsViewModel.DeleteProfileCommand.Execute(null); Assert.IsFalse(_profileSettingsViewModel.Settings.ConversionProfiles.Contains(secondProfile), "Current profile has not been deleted."); Assert.AreEqual(1, _profileSettingsViewModel.Settings.ConversionProfiles.Count, "Wrong number of profiles after current profile should be deleted."); Assert.AreEqual(_originalFirstProfile, _profileSettingsViewModel.CurrentProfile, "CurrentProfile is not the original first profile."); }
public void Execute_ProfileIsMappedToPrinters_MessageWithLinkedPrintersTextAndWarningIcon() { _settings.ApplicationSettings.PrinterMappings = new ObservableCollection <PrinterMapping>(); var pm1 = new PrinterMapping("Printer1", _currentProfile.Guid); _settings.ApplicationSettings.PrinterMappings.Add(pm1); var pm2 = new PrinterMapping("Printer2", "Some other GUID"); _settings.ApplicationSettings.PrinterMappings.Add(pm2); var pm3 = new PrinterMapping("Printer3", _currentProfile.Guid); _settings.ApplicationSettings.PrinterMappings.Add(pm3); _profileRemoveCommand.Execute(null); var interaction = _interactionRequest.AssertWasRaised <MessageInteraction>(); Assert.AreEqual(MessageIcon.Warning, interaction.Icon); var sb = new StringBuilder(); sb.AppendLine(_currentProfile.Name); sb.AppendLine(_translation.RemoveProfileForSure); sb.AppendLine(); sb.AppendLine(_translation.GetProfileIsMappedToMessage(2)); sb.AppendLine("Printer1"); sb.AppendLine("Printer3"); sb.AppendLine(); sb.AppendLine(_translation.GetPrinterWillBeMappedToMessage(2)); Assert.AreEqual(sb.ToString(), interaction.Text); }
public void PrinterMappingWrapper_WithMapping_ExposesSamePrinterName() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); Assert.AreEqual(mapping.PrinterName, wrapper.PrinterName); }
public void SetUp() { var bootstrapper = new IntegrationTestBootstrapper(); var container = bootstrapper.ConfigureContainer(); container.Options.AllowOverridingRegistrations = true; _workflowFactory = container.GetInstance <IWorkflowFactory>(); _jobBuilder = container.GetInstance <IJobBuilder>(); _interactiveProfile = new ConversionProfile(); _interactiveProfile.Name = InteractivePrinterName; _interactiveProfile.Guid = InteractiveProfileGuid; _interactiveProfile.AutoSave.Enabled = false; _interactiveProfileMapping = new PrinterMapping(InteractivePrinterName, InteractiveProfileGuid); _autosaveProfile = new ConversionProfile(); _autosaveProfile.Name = AutosaveProfileName; _autosaveProfile.Guid = AutosaveProfileGuid; _autosaveProfile.AutoSave.Enabled = true; _autosaveProfileMapping = new PrinterMapping(AutosavePrinterName, AutosaveProfileGuid); _th = container.GetInstance <TestHelper>(); _th.InitTempFolder("ConversionWorklowTest"); _th.GenerateGsJob(PSfiles.ThreePDFCreatorTestpages, OutputFormat.Pdf); _settings = new PdfCreatorSettings(); }
DeleteProfile_TwoProfiles_ProfileWithPrinterMapping_QueryDeleteProfileWithPrinterMappingReturnsFalse_DeletionGetsCanceled () { var secondProfile = new ConversionProfile(); _settings.ConversionProfiles.Add(secondProfile); _settings.ApplicationSettings.LastUsedProfileGuid = secondProfile.Guid; var printerMapping = new PrinterMapping(); printerMapping.PrinterName = "fake printer"; printerMapping.ProfileGuid = _settings.ApplicationSettings.LastUsedProfileGuid; _settings.ApplicationSettings.PrinterMappings.Add(printerMapping); _profileSettingsViewModel = CreateProfileSettingsViewModel(_settings); _interactionInvoker.HandleMessageInteraction = interaction => { interaction.Response = MessageResponse.No; }; _profileSettingsViewModel.DeleteProfileCommand.Execute(null); Assert.IsTrue(_profileSettingsViewModel.Settings.ConversionProfiles.Contains(secondProfile), "Current profile was deleted although deletion was canceled."); Assert.AreEqual(2, _profileSettingsViewModel.Settings.ConversionProfiles.Count, "Wrong number of profiles after canceled deletion."); Assert.AreEqual(secondProfile, _profileSettingsViewModel.CurrentProfile, "Wrong CurrentProfile after canceled deletion."); }
public void PrinterMappingWrapper_WithMapping_ExposesSameObject() { var mapping = new PrinterMapping(); var wrapper = new PrinterMappingWrapper(mapping, _profiles); Assert.AreSame(mapping, wrapper.PrinterMapping); }
public void IsPrimaryPrinter_WithMappedPrinter_IsTrue() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); wrapper.PrimaryPrinter = mapping.PrinterName; Assert.IsTrue(wrapper.IsPrimaryPrinter); }
public void PrinterMappingWrapper_ChangingProfile_ChangesWrappedGuid() { var mapping = new PrinterMapping("SomePrinter", _profile1.Guid); var wrapper = new PrinterMappingWrapper(mapping, _profiles); wrapper.Profile = _profile2; Assert.AreEqual(_profile2.Guid, mapping.ProfileGuid); }
public void PrinterMappingWrapper_ChangingPrinterName_ReplicatesToWrappedObject() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); wrapper.PrinterName = "OtherPrinter"; Assert.AreEqual(mapping.PrinterName, wrapper.PrinterName); }
public void PrinterMappingWrapper_ChangingPrinterName_ChangesPrinterName() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); wrapper.PrinterName = "OtherPrinter"; Assert.AreEqual("OtherPrinter", wrapper.PrinterName); }
public void IsPrimaryPrinter_WithUnknownPrinter_IsFalse() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); wrapper.PrimaryPrinter = "UnknownPrinter"; Assert.IsFalse(wrapper.IsPrimaryPrinter); }
public void PrinterMappingWrapper_ChangingPrimaryPrinter_RaisesPropertyChangedForIsPrimaryPrinter() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); var wasRaised = false; wrapper.PropertyChanged += (sender, args) => { if (args.PropertyName == "IsPrimaryPrinter") { wasRaised = true; } }; wrapper.PrimaryPrinter = "OtherPrinter"; Assert.IsTrue(wasRaised); }
public void CreateConversionWorkflowTest_PrinterMappingToInvalidProfile_ReturnWorkflowWithDefaultProfile() { _settings.ApplicationSettings.PrinterMappings.Add(_autosaveProfileMapping); _settings.ApplicationSettings.PrinterMappings.Add(_interactiveProfileMapping); const string somePrinterName = "somePrinterName"; const string someProfileGuid = "someProfileNotInProfilesListGuid"; var somePrinterMapping = new PrinterMapping(somePrinterName, someProfileGuid); _settings.ApplicationSettings.PrinterMappings.Add(somePrinterMapping); _settings.ConversionProfiles.Add(_autosaveProfile); //For this test the default profile must not be the first in list! _interactiveProfile.Guid = "DefaultGuid"; _settings.ConversionProfiles.Add(_interactiveProfile); _th.JobInfo.SourceFiles[0].PrinterName = somePrinterName; var job = _jobBuilder.BuildJobFromJobInfo(_th.JobInfo, _settings); Assert.AreEqual(_interactiveProfile, job.Profile, "Wrong Profile in Job of workflow."); }
public void PrinterMappingWrapper_ChangingProfile_RaisesPropertyChanged() { var mapping = new PrinterMapping("SomePrinter", "SomeGuid"); var wrapper = new PrinterMappingWrapper(mapping, _profiles); bool wasRaised = false; wrapper.PropertyChanged += (sender, args) => { if (args.PropertyName == "Profile") { wasRaised = true; } }; wrapper.Profile = _profile2; Assert.IsTrue(wasRaised); }
public void SetUp() { _interactiveProfile = new ConversionProfile(); _interactiveProfile.Name = InteractivePrinterName; _interactiveProfile.Guid = InteractiveProfileGuid; _interactiveProfile.AutoSave.Enabled = false; _interactiveProfileMapping = new PrinterMapping(InteractivePrinterName, InteractiveProfileGuid); _autosaveProfile = new ConversionProfile(); _autosaveProfile.Name = AutosaveProfileName; _autosaveProfile.Guid = AutosaveProfileGuid; _autosaveProfile.AutoSave.Enabled = true; _autosaveProfileMapping = new PrinterMapping(AutosavePrinterName, AutosaveProfileGuid); _th = new TestHelper("ConversionWorklowTest"); _th.GenerateGsJob(PSfiles.ThreePDFCreatorTestpages, OutputFormat.Pdf); _settings = new PdfCreatorSettings(null); }
DeleteProfile_TwoProfiles_ProfileWithPrinterMapping_QueryDeleteProfileWithPrinterMappingReturnsFalse_DeletionGetsCanceled () { var secondProfile = new ConversionProfile(); _settings.ConversionProfiles.Add(secondProfile); _settings.ApplicationSettings.LastUsedProfileGuid = secondProfile.Guid; var printerMapping = new PrinterMapping(); printerMapping.PrinterName = "fake printer"; printerMapping.ProfileGuid = _settings.ApplicationSettings.LastUsedProfileGuid; _settings.ApplicationSettings.PrinterMappings.Add(printerMapping); _profileSettingsViewModel = CreateProfileSettingsViewModel(_settings); var functionsStub = MockRepository.GenerateStub <ITestFunctions>(); functionsStub.Stub(x => x.ReturnsBoolWithoutParameters()).Return(false); _profileSettingsViewModel.QueryDeleteProfile = functionsStub.ReturnsBoolWithoutParameters; functionsStub.Stub(x => x.ReturnsBoolWithTwoStringParameters(secondProfile.Name, printerMapping.PrinterName)) .Return(false); _profileSettingsViewModel.QueryDeleteProfileWithPrinterMapping = functionsStub.ReturnsBoolWithTwoStringParameters; _profileSettingsViewModel.DeleteProfileCommand.Execute(null); functionsStub.AssertWasNotCalled(x => x.ReturnsBoolWithoutParameters()); //QueryDeleteProfile functionsStub.AssertWasCalled( x => x.ReturnsBoolWithTwoStringParameters(secondProfile.Name, printerMapping.PrinterName), options => options.Repeat.Once()); //QueryDeleteProfileWithPrinterMapping Assert.IsTrue(_profileSettingsViewModel.Settings.ConversionProfiles.Contains(secondProfile), "Current profile was deleted although deletion was canceled."); Assert.AreEqual(2, _profileSettingsViewModel.Settings.ConversionProfiles.Count, "Wrong number of profiles after canceled deletion."); Assert.AreEqual(secondProfile, _profileSettingsViewModel.CurrentProfile, "Wrong CurrentProfile after canceled deletion."); }
public void Execute_ProfileIsMappedToPrinters_UserAppliesInteraction_ProfileGetsRemovedPrintersGetMappedToDefaultGuid() { _settings.ApplicationSettings.PrinterMappings = new ObservableCollection <PrinterMapping>(); var pm1 = new PrinterMapping("Printer1", _currentProfile.Guid); _settings.ApplicationSettings.PrinterMappings.Add(pm1); var pm2 = new PrinterMapping("Printer2", "Some other GUID"); _settings.ApplicationSettings.PrinterMappings.Add(pm2); var pm3 = new PrinterMapping("Printer3", _currentProfile.Guid); _settings.ApplicationSettings.PrinterMappings.Add(pm3); _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i => i.Response = MessageResponse.Yes); _profileRemoveCommand.Execute(null); Assert.AreEqual(1, _currentSettingsProvider.Profiles.Count); Assert.IsFalse(_currentSettingsProvider.Profiles.Contains(_currentProfile)); Assert.AreEqual(pm1.ProfileGuid, ProfileGuids.DEFAULT_PROFILE_GUID); Assert.AreEqual(pm3.ProfileGuid, ProfileGuids.DEFAULT_PROFILE_GUID); }
private IEnumerable <PrinterMapping> GetMappingsFromRegistry() { var printerMappingsKey = Path.Combine(_installationPathProvider.ApplicationRegistryPath, "Settings\\ApplicationSettings\\PrinterMappings"); var printerList = new List <PrinterMapping>(); var printerRegKey = Registry.CurrentUser.OpenSubKey(printerMappingsKey); var mappingSubKeyNames = printerRegKey?.GetSubKeyNames(); if (mappingSubKeyNames != null) { foreach (var subKeyName in mappingSubKeyNames) { var key = Registry.CurrentUser.OpenSubKey(Path.Combine(printerMappingsKey, subKeyName)); var printerName = key?.GetValue("PrinterName").ToString(); var profileGuid = key?.GetValue("ProfileGuid").ToString(); if (!string.IsNullOrEmpty(printerName) & !string.IsNullOrEmpty(profileGuid)) { var mapping = new PrinterMapping(printerName, profileGuid); printerList.Add(mapping); } } } return(printerList); }
public PrinterMappingWrapper(PrinterMapping printerMapping, IEnumerable <ConversionProfile> profiles) { PrinterMapping = printerMapping; PrinterName = printerMapping.PrinterName; Profile = profiles.FirstOrDefault(p => p.Guid == printerMapping.ProfileGuid); }