async Task ProcessMissing(StringBuilder builder)
    {
        if (!missings.Any())
        {
            return;
        }

        builder.AppendLine("Pending:");
        foreach (var item in missings)
        {
            builder.AppendLine($"  {Path.GetFileName(item.Verified)}");
            if (BuildServerDetector.Detected)
            {
                continue;
            }
            if (settings.clipboardEnabled)
            {
                await ClipboardCapture.AppendMove(item.Received, item.Verified);
            }

            if (diffTool != null &&
                settings.diffEnabled)
            {
                if (EmptyFilesWrapper.TryWriteEmptyFile(item.Extension, item.Verified))
                {
                    DiffRunner.Launch(diffTool, item.Received, item.Verified);
                }
            }
        }
    }
Example #2
0
 static void RunClipboardCommand()
 {
     foreach (var line in ClipboardCapture
              .Read()
              .Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries))
     {
         var command = $"/c {line}";
         using var process = Process.Start("cmd.exe", command);
         process.WaitForExit();
     }
 }
Example #3
0
    Task ProcessDangling(StringBuilder builder, string item)
    {
        builder.AppendLine($"  {Path.GetFileName(item)}");
        if (settings.autoVerify)
        {
            File.Delete(item);
            return(Task.CompletedTask);
        }

        if (!settings.clipboardEnabled)
        {
            return(Task.CompletedTask);
        }

        return(ClipboardCapture.AppendDelete(item));
    }
    async Task ProcessDangling(StringBuilder builder)
    {
        if (!danglingVerified.Any())
        {
            return;
        }

        builder.AppendLine("Deletions:");
        foreach (var item in danglingVerified)
        {
            builder.AppendLine($"  {Path.GetFileName(item)}");
            if (!settings.clipboardEnabled)
            {
                continue;
            }
            await ClipboardCapture.AppendDelete(item);
        }
    }
Example #5
0
    async Task ProcessNotEquals(StringBuilder builder)
    {
        if (!notEquals.Any())
        {
            return;
        }

        builder.AppendLine("Differences:");
        foreach (var item in notEquals)
        {
            builder.AppendLine($"{Path.GetFileName(item.Received)}");
            if (Extensions.IsTextExtension(item.Extension))
            {
                builder.AppendLine($"{File.ReadAllText(item.Received)}");
                if (File.Exists(item.Verified))
                {
                    builder.AppendLine($"{Path.GetFileName(item.Verified)}");
                    builder.AppendLine($"{File.ReadAllText(item.Verified)}");
                }
            }
            if (BuildServerDetector.Detected)
            {
                continue;
            }
            if (settings.autoVerify)
            {
                AcceptChanges(item);
                continue;
            }
            if (settings.clipboardEnabled)
            {
                await ClipboardCapture.AppendMove(item.Received, item.Verified);
            }

            if (diffTool != null &&
                settings.diffEnabled)
            {
                DiffRunner.Launch(diffTool, item.Received, item.Verified);
            }
        }
    }
Example #6
0
    async Task ProcessNotEquals(StringBuilder builder, FilePair item)
    {
        if (settings.handleOnVerifyMismatch != null)
        {
            await settings.handleOnVerifyMismatch(item.Received, item.Verified);
        }
        builder.AppendLine($"{Path.GetFileName(item.Received)}");
        if (Extensions.IsText(item.Extension))
        {
            builder.AppendLine($"{await FileHelpers.ReadText(item.Received)}");
            if (File.Exists(item.Verified))
            {
                builder.AppendLine($"{Path.GetFileName(item.Verified)}");
                builder.AppendLine($"{await FileHelpers.ReadText(item.Verified)}");
            }
        }

        if (BuildServerDetector.Detected)
        {
            return;
        }

        if (settings.autoVerify)
        {
            AcceptChanges(item);
            return;
        }

        if (settings.clipboardEnabled)
        {
            await ClipboardCapture.AppendMove(item.Received, item.Verified);
        }

        if (!settings.diffEnabled)
        {
            return;
        }

        DiffRunner.Launch(item.Received, item.Verified);
    }
Example #7
0
 public Tests(ITestOutputHelper output) :
     base(output)
 {
     ClipboardCapture.Clear();
 }