private void TitleAddCommandExecute(object obj) { var newItem = new TitleReplacement(); TitleReplacements.Add(newItem); TitleReplacementView.MoveCurrentTo(newItem); }
protected void UpgradeToImprovedRegexTitleReplacements(string titleReplacementPath) { if (int.TryParse(Data.GetValue($@"{titleReplacementPath}\numClasses"), out var replacementCount)) { for (var i = 0; i < replacementCount; i++) { string section = $"{titleReplacementPath}\\{i}\\"; var replacement = new TitleReplacement(); replacement.ReadValues(Data, section); if (replacement.ReplacementType == ReplacementType.RegEx) { continue; } if (String.IsNullOrEmpty(replacement.Replace)) { continue; } replacement.ReplacementType = ReplacementType.RegEx; replacement.Search = Regex.Escape(replacement.Search); replacement.Replace = Regex.Escape(replacement.Replace); replacement.StoreValues(Data, section); } } }
public void Execute(object parameter) { var titleReplacement = new TitleReplacement(); var editTitleReplacementInteraction = new TitleReplacementEditInteraction(titleReplacement); _interactionRequest.Raise(editTitleReplacementInteraction, AddInteractionCallback); }
private string ReplaceTitle(TitleReplacement titleReplacement, string title) { if (string.IsNullOrEmpty(titleReplacement.Search)) { return(title); } switch (titleReplacement.ReplacementType) { case ReplacementType.RegEx: title = Regex.Replace(title, titleReplacement.Search, titleReplacement.Replace); break; case ReplacementType.Start: if (title.StartsWith(titleReplacement.Search, StringComparison.InvariantCultureIgnoreCase)) { title = title.Substring(titleReplacement.Search.Length); } break; case ReplacementType.End: if (title.EndsWith(titleReplacement.Search, StringComparison.InvariantCultureIgnoreCase)) { title = title.Substring(0, title.LastIndexOf(titleReplacement.Search, StringComparison.InvariantCultureIgnoreCase)); } break; case ReplacementType.Replace: default: title = title.Replace(titleReplacement.Search, "", StringComparison.InvariantCultureIgnoreCase); break; } return(title); }
private void ApplyV7TitleReplacements() { int replacementCount; if (int.TryParse(Data.GetValue(@"ApplicationSettings\TitleReplacement\numClasses"), out replacementCount)) { for (var i = 0; i < replacementCount; i++) { string section = $"ApplicationSettings\\TitleReplacement\\{i}\\"; var replacement = new TitleReplacement(); replacement.ReadValues(Data, section); if (replacement.ReplacementType == ReplacementType.RegEx) { continue; } if (String.IsNullOrEmpty(replacement.Replace)) { continue; } replacement.ReplacementType = ReplacementType.RegEx; replacement.Search = Regex.Escape(replacement.Search); replacement.Replace = Regex.Escape(replacement.Replace); replacement.StoreValues(Data, section); } } }
public void Execute_RunFailedInteractionWithTitleReplacement() { _interactionRequest.RegisterInteractionHandler <TitleReplacementEditInteraction>(i => { i.Success = false; //User cancels }); var titleReplacement = new TitleReplacement(); var titleReplacementSearch = "searchText"; titleReplacement.Search = titleReplacementSearch; var titleReplacementReplace = "replaceText"; titleReplacement.Replace = titleReplacementReplace; titleReplacement.ReplacementType = ReplacementType.RegEx; _command.Execute(titleReplacement); var titleReplacementEditInteraction = _interactionRequest.AssertWasRaised <TitleReplacementEditInteraction>(); Assert.AreSame(titleReplacementEditInteraction.Replacement, titleReplacement); }
public void AddReplacement(TitleReplacement titleReplacement) { _replacements.Add(titleReplacement); }
public void TitleReplacement_WithValidRegEx_IsValid(string search, string replace) { var replacement = new TitleReplacement(ReplacementType.RegEx, search, replace); Assert.IsTrue(replacement.IsValid()); }
public void TitleReplacement_(string search, string replace) { var replacement = new TitleReplacement(ReplacementType.RegEx, search, replace); Assert.IsFalse(replacement.IsValid()); }
public void TitleReplacement_WithEmptySearch_IsNotValid(ReplacementType type) { var replacement = new TitleReplacement(type, "", ""); Assert.IsFalse(replacement.IsValid()); }
public TitleReplacementEditInteraction(TitleReplacement replacement) { Replacement = replacement; }