public void DataWithVersion4_UpgradeToVersion5_SetsVersionTo5() { var data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "4"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(5); Assert.AreEqual("5", data.GetValue(SettingsUpgrader.VersionSettingPath)); }
public void Version0_UpgradeVersion1_AddedTitleTemplateWithDefaultValue() { Data data = Data.CreateDataStorage(); data.SetValue(@"ConversionProfiles\numClasses", "2"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(1); Assert.AreEqual("<PrintJobName>", data.GetValue(@"ConversionProfiles\0\TitleTemplate")); Assert.AreEqual("<PrintJobName>", data.GetValue(@"ConversionProfiles\1\TitleTemplate")); }
public void Version0WithDefaultFormatPropertyInProfiles_UpgradeToVersion1_DefaultFormatSettingIsRemovedAfterRename() { Data data = Data.CreateDataStorage(); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\DefaultFormat", "Pdf"); data.SetValue(@"ConversionProfiles\1\DefaultFormat", "Png"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(1); Assert.AreEqual("", data.GetValue(@"ConversionProfiles\0\DefaultFormat")); }
public void Version1_UpgradeVersion2_LastUsedProfilGuidRenamedToLastUsedProfilEGuid() { Data data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "1"); data.SetValue(@"ApplicationSettings\LastUsedProfilGuid", "SomeTestGuid"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(2); Assert.AreEqual("SomeTestGuid", data.GetValue(@"ApplicationSettings\LastUsedProfileGuid")); }
public void Version3_UpgradeVersion4_TiffColorBlackWhiteIsNamedBlackWhiteG4Fax() { Data data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "3"); data.SetValue(@"ConversionProfiles\numClasses", "1"); data.SetValue(@"ConversionProfiles\0\TiffSettings\Color", "BlackWhite"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(4); Assert.AreEqual("BlackWhiteG4Fax", data.GetValue(@"ConversionProfiles\0\TiffSettings\Color")); }
public void Version0_UpgradeToIncrediblyHighVersion_RenamesToOutputFormat() { Data data = Data.CreateDataStorage(); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\DefaultFormat", "Pdf"); data.SetValue(@"ConversionProfiles\1\DefaultFormat", "Png"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(1); Assert.AreEqual("Pdf", data.GetValue(@"ConversionProfiles\0\OutputFormat")); Assert.AreEqual("Png", data.GetValue(@"ConversionProfiles\1\OutputFormat")); }
public void Test_RemoveOldDefaultFormat() { var data = Data.CreateDataStorage(); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\DefaultFormat", "Pdf"); data.SetValue(@"ConversionProfiles\1\DefaultFormat", "Png"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(1); Assert.AreEqual("", data.GetValue(@"ConversionProfiles\0\DefaultFormat")); Assert.AreEqual("", data.GetValue(@"ConversionProfiles\1\DefaultFormat")); }
public void WithAutoSaveDisAbled_DoesNotExtractTargetDirectory() { var data = CreateV6Storage(); data.SetValue(@"ConversionProfiles\numClasses", "1"); data.SetValue(@"ConversionProfiles\0\AutoSave\Enabled", "False"); data.SetValue(@"ConversionProfiles\0\AutoSave\TargetDirectory", "abc"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(7); var settings = CreateSettings(data); Assert.AreEqual("", settings.ConversionProfiles[0].TargetDirectory); }
public void Version0_UpgradeToIncrediblyHighVersion_RenamesEncryptionLevels() { Data data = Data.CreateDataStorage(); data.SetValue(@"ConversionProfiles\numClasses", "3"); data.SetValue(@"ConversionProfiles\0\PdfSettings\Security\EncryptionLevel", "Low40Bit"); data.SetValue(@"ConversionProfiles\1\PdfSettings\Security\EncryptionLevel", "Medium128Bit"); data.SetValue(@"ConversionProfiles\2\PdfSettings\Security\EncryptionLevel", "High128BitAes"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(1); Assert.AreEqual("Rc40Bit", data.GetValue(@"ConversionProfiles\0\PdfSettings\Security\EncryptionLevel"), "Did not rename Rc40Bit Encryption"); Assert.AreEqual("Rc128Bit", data.GetValue(@"ConversionProfiles\1\PdfSettings\Security\EncryptionLevel"), "Did not rename Rc128Bit Encryption"); Assert.AreEqual("Aes128Bit", data.GetValue(@"ConversionProfiles\2\PdfSettings\Security\EncryptionLevel"), "Did not rename Aes128Bit Encryption"); }
public void Version2_UpgradeVersion3_PdfAisNamedPdfA2b() { Data data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "2"); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\OutputFormat", "PdfA"); data.SetValue(@"ConversionProfiles\1\OutputFormat", "PdfA"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(3); Assert.AreEqual("PdfA2B", data.GetValue(@"ConversionProfiles\0\OutputFormat")); Assert.AreEqual("PdfA2B", data.GetValue(@"ConversionProfiles\1\OutputFormat")); }
public void Test_MoveAddCoverToSectionInCoverPage() { var data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "1"); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\CoverPage\AddBackground", "true"); data.SetValue(@"ConversionProfiles\1\CoverPage\AddBackground", "true"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(2); Assert.AreEqual("true", data.GetValue(@"ConversionProfiles\0\BackgroundPage\OnCover"), "1"); Assert.AreEqual("true", data.GetValue(@"ConversionProfiles\1\BackgroundPage\OnCover"), "2"); }
public void Version1_UpgradeVersion2_MovedBackgroundOnAttachment() { Data data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "1"); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\AttachmentPage\AddBackground", "true"); data.SetValue(@"ConversionProfiles\1\AttachmentPage\AddBackground", "true"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(2); Assert.AreEqual("true", data.GetValue(@"ConversionProfiles\0\BackgroundPage\OnAttachment")); Assert.AreEqual("true", data.GetValue(@"ConversionProfiles\1\BackgroundPage\OnAttachment")); }
public void WithInteractive_ExtractsDefaultFolder() { var expectedDirectory = "abc"; var data = CreateV6Storage(); data.SetValue(@"ConversionProfiles\numClasses", "1"); data.SetValue(@"ConversionProfiles\0\AutoSave\Enabled", "False"); data.SetValue(@"ConversionProfiles\0\SaveDialog\Folder", expectedDirectory); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(7); var settings = CreateSettings(data); Assert.AreEqual(expectedDirectory, settings.ConversionProfiles[0].TargetDirectory); }
public void TitleReplacement_StartWithEmptyReplace_RemainsUnchanged() { var data = CreateV6Storage(); data.SetValue(@"ApplicationSettings\TitleReplacement\numClasses", "1"); data.SetValue(@"ApplicationSettings\TitleReplacement\0\ReplacementType", "Start"); data.SetValue(@"ApplicationSettings\TitleReplacement\0\Search", "123"); data.SetValue(@"ApplicationSettings\TitleReplacement\0\Replace", ""); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(7); var settings = CreateSettings(data); Assert.IsNotEmpty(settings.ApplicationSettings.TitleReplacement); Assert.AreEqual(ReplacementType.Start, settings.ApplicationSettings.TitleReplacement.First().ReplacementType); Assert.AreEqual("123", settings.ApplicationSettings.TitleReplacement.First().Search); }
private void UpgradeFromPreviousVersion() { try { // This works for both ClickOnce and non-ClickOnce applications, whereas // ApplicationDeployment.CurrentDeployment.DataDirectory only works for ClickOnce applications DirectoryInfo currentSettingsDir = new FileInfo(ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal).FilePath).Directory; if (currentSettingsDir == null) { throw new Exception("Failed to determine the location of the settings file."); } if (!currentSettingsDir.Exists) { currentSettingsDir.Create(); } // LINQ to Objects for .NET 2.0 courtesy of LINQBridge (linqbridge.googlecode.com) var previousSettings = (from dir in currentSettingsDir.Parent.GetDirectories() let dirVer = new { Dir = dir, Ver = new Version(dir.Name) } where dirVer.Ver < CurrentVersion orderby dirVer.Ver descending select dirVer).FirstOrDefault(); if (previousSettings == null) { return; } XmlElement userSettings = ReadUserSettings(previousSettings.Dir.GetFiles("user.config").Single().FullName); userSettings = SettingsUpgrader.Upgrade(userSettings, previousSettings.Ver); WriteUserSettings(userSettings, currentSettingsDir.FullName + @"\user.config", true); Reload(); } catch (Exception ex) { MessageBoxes.Alert(MessageBoxIcon.Error, "There was an error upgrading the the user settings from the previous version. The user settings will be reset.\n\n" + ex.Message); Default.Reset(); } }
public void TitleReplacement_StartWithReplace_ConvertsToRegExWithEscapedChars() { var data = CreateV6Storage(); data.SetValue(@"ApplicationSettings\TitleReplacement\numClasses", "1"); data.SetValue(@"ApplicationSettings\TitleReplacement\0\ReplacementType", "Start"); data.SetValue(@"ApplicationSettings\TitleReplacement\0\Search", "123"); data.SetValue(@"ApplicationSettings\TitleReplacement\0\Replace", "x.y*z"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(7); var settings = CreateSettings(data); Assert.IsNotEmpty(settings.ApplicationSettings.TitleReplacement); Assert.AreEqual(ReplacementType.RegEx, settings.ApplicationSettings.TitleReplacement.First().ReplacementType); Assert.AreEqual("123", settings.ApplicationSettings.TitleReplacement.First().Search); Assert.AreEqual(@"x\.y\*z", settings.ApplicationSettings.TitleReplacement.First().Replace); }
public void WithTwoTimeServers_ExtractsBothTimeserverAccount() { var firstAccount = new TimeServerAccount { IsSecured = true, UserName = "******", Password = "******", Url = "http://mytimeserver1.local", }; var secondAccount = new TimeServerAccount { IsSecured = true, UserName = "******", Password = "******", Url = "http://mytimeserver2.local", }; var data = CreateV6Storage(); data.SetValue(@"ConversionProfiles\numClasses", "2"); StoreTimeServerAccount(data, 0, firstAccount); StoreTimeServerAccount(data, 1, secondAccount); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(7); var settings = CreateSettings(data); var expectedNumberofProfiles = NumDefaultServers + 2; Assert.AreEqual(expectedNumberofProfiles, settings.ApplicationSettings.Accounts.TimeServerAccounts.Count); Assert.IsNotNull(settings.ConversionProfiles[0].PdfSettings.Signature.TimeServerAccountId); Assert.IsNotEmpty(settings.ConversionProfiles[0].PdfSettings.Signature.TimeServerAccountId); Assert.IsNotNull(settings.ConversionProfiles[1].PdfSettings.Signature.TimeServerAccountId); Assert.IsNotEmpty(settings.ConversionProfiles[1].PdfSettings.Signature.TimeServerAccountId); AssertTimeServersAreEqual(firstAccount, settings.ApplicationSettings.Accounts.TimeServerAccounts.First(a => a.Url == firstAccount.Url)); AssertTimeServersAreEqual(secondAccount, settings.ApplicationSettings.Accounts.TimeServerAccounts.First(a => a.Url == secondAccount.Url)); }
public void WithFtp_ExtractsFtpAccount() { var account = new FtpAccount { UserName = "******", Password = "******", Server = "ftp.local" }; var data = CreateV6Storage(); StoreFtpAccount(data, 0, account); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(7); var settings = CreateSettings(data); Assert.IsNotEmpty(settings.ApplicationSettings.Accounts.FtpAccounts); Assert.IsNotNullOrEmpty(settings.ConversionProfiles[0].Ftp.AccountId); AssertFtpAccountsAreEqual(account, settings.ApplicationSettings.Accounts.FtpAccounts[0]); }
public void Version2_UpgradeVersion3_OutputformatExceptPdfAreUnchanged() { Data data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "2"); data.SetValue(@"ConversionProfiles\numClasses", "5"); data.SetValue(@"ConversionProfiles\0\OutputFormat", "Pdf"); data.SetValue(@"ConversionProfiles\1\OutputFormat", "PdfX"); data.SetValue(@"ConversionProfiles\2\OutputFormat", "Jpeg"); data.SetValue(@"ConversionProfiles\3\OutputFormat", "Png"); data.SetValue(@"ConversionProfiles\4\OutputFormat", "Tif"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(3); Assert.AreEqual("Pdf", data.GetValue(@"ConversionProfiles\0\OutputFormat")); Assert.AreEqual("PdfX", data.GetValue(@"ConversionProfiles\1\OutputFormat")); Assert.AreEqual("Jpeg", data.GetValue(@"ConversionProfiles\2\OutputFormat")); Assert.AreEqual("Png", data.GetValue(@"ConversionProfiles\3\OutputFormat")); Assert.AreEqual("Tif", data.GetValue(@"ConversionProfiles\4\OutputFormat")); }
public void Test_MoveEMailSmtpSectionToEmailSmtpSettings() { var data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "5"); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Address", "Address"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\AddSignature", "False"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Content", "Content"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Enabled", "True"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Password", "Password"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Port", "1"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Recipients", "Recipients"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\SameTextAsClientMail", "SameTextAsClientMail"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Server", "Server"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Ssl", "True"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\Subject", "Subject"); data.SetValue(@"ConversionProfiles\0\EmailSmtp\UserName", "UserName"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(6); Assert.AreEqual("Address", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Address")); Assert.AreEqual("False", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\AddSignature")); Assert.AreEqual("Content", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Content")); Assert.AreEqual("True", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Enabled")); Assert.AreEqual("Password", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Password")); Assert.AreEqual("1", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Port")); Assert.AreEqual("Recipients", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Recipients")); Assert.AreEqual("SameTextAsClientMail", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\SameTextAsClientMail")); Assert.AreEqual("Server", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Server")); Assert.AreEqual("True", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Ssl")); Assert.AreEqual("Subject", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\Subject")); Assert.AreEqual("UserName", data.GetValue(@"ConversionProfiles\0\EmailSmtpSettings\UserName")); }
public void Test_MoveEMailClientSectionToEmailClientSettings() { var data = Data.CreateDataStorage(); data.SetValue(SettingsUpgrader.VersionSettingPath, "5"); data.SetValue(@"ConversionProfiles\numClasses", "2"); data.SetValue(@"ConversionProfiles\0\EmailClient\AddSignature", "True"); data.SetValue(@"ConversionProfiles\0\EmailClient\Content", "Content"); data.SetValue(@"ConversionProfiles\0\EmailClient\Enabled", "True"); data.SetValue(@"ConversionProfiles\0\EmailClient\Recipients", "Recipients"); data.SetValue(@"ConversionProfiles\0\EmailClient\Subject", "Subject"); var upgrader = new SettingsUpgrader(data); upgrader.Upgrade(6); Assert.AreEqual("True", data.GetValue(@"ConversionProfiles\0\EmailClientSettings\AddSignature")); Assert.AreEqual("Content", data.GetValue(@"ConversionProfiles\0\EmailClientSettings\Content")); Assert.AreEqual("True", data.GetValue(@"ConversionProfiles\0\EmailClientSettings\Enabled")); Assert.AreEqual("Recipients", data.GetValue(@"ConversionProfiles\0\EmailClientSettings\Recipients")); Assert.AreEqual("Subject", data.GetValue(@"ConversionProfiles\0\EmailClientSettings\Subject")); }
public void DataWithVersion4_UpgradeRequiredToVersion5_ReturnsTrue() { var upgrader = new SettingsUpgrader(_dataV3); Assert.IsTrue(upgrader.RequiresUpgrade(5)); }