Esempio n. 1
0
 public void KeepLastEmptyLineOnContentEdit()
 {
     RefreshWorkData();
     foreach (var path in new[] { Ja_UTF8_CRLF_TxtPath, Ja_UTF8_CRLF_EndsWithEmptyLine_TxtPath })
     {
         var fileInfo     = new TextFileInfo(path);
         int srcLineCount = fileInfo.ReadAllLines().Count;
         var pathTree     = new PathTree();
         pathTree.TryAdd(path, out string errorMessage);
         var commands = new List <Command>();
         if (Command.TryParse("s/ほげ/ホゲ/g", out var command))
         {
             commands.Add(command);
         }
         var runner = new CommandRunner(commands);
         runner.Run(pathTree, CommandRunnerActionKind.Replace);
         int lineCount = fileInfo.ReadAllLines().Count;
         Assert.Equal(srcLineCount, lineCount);
     }
 }
Esempio n. 2
0
        public void WorkWithSedRegex()
        {
            RefreshWorkData();
            string path     = Ja_UTF8_CRLF_TxtPath;
            var    pathTree = new PathTree();

            pathTree.TryAdd(path, out string errorMessage);
            var commands = new List <Command>();

            if (Command.TryParse(@"s/ほ\(げ\)/ホ\1/g", out var command))
            {
                commands.Add(command);
            }
            var runner = new CommandRunner(commands);

            runner.Run(pathTree, CommandRunnerActionKind.Replace);
            var fileInfo = new TextFileInfo(path);
            var lines    = fileInfo.ReadAllLines();

            Assert.Contains(lines, l => l.Contains("ホげ"));
        }