Пример #1
0
    static async Task InitialVerifySplit(TypeToSplit target, bool hasMatchingDiffTool, VerifySettings settings, FilePair info, FilePair file1, FilePair file2)
    {
        if (settings.autoVerify)
        {
            await Verifier.Verify(target, settings);

            AssertExists(info.Verified);
            AssertExists(file1.Verified);
            AssertExists(file2.Verified);
        }
        else
        {
            await Throws(() => Verifier.Verify(target, settings));

            ProcessCleanup.Refresh();
            AssertProcess(hasMatchingDiffTool, info, file1, file2);
            if (hasMatchingDiffTool)
            {
                AssertExists(info.Verified);
                AssertExists(file1.Verified);
                AssertExists(file2.Verified);
            }

            AssertExists(info.Received);
            AssertExists(file1.Received);
            AssertExists(file2.Received);
        }
    }
Пример #2
0
    async Task RunSplitTest(
        TypeToSplit initialTarget,
        TypeToSplit secondTarget,
        bool hasMatchingDiffTool,
        bool hasExistingReceived,
        bool autoVerify)
    {
        var settings = new VerifySettings();

        if (autoVerify)
        {
            settings.AutoVerify();
        }

        var prefix       = Path.Combine(SourceDirectory, $"{Context.UniqueTestName}.");
        var danglingFile = $"{prefix}03.verified.txt";
        var info         = new FilePair("txt", $"{prefix}info");
        var file1        = new FilePair("txt", $"{prefix}00");
        var file2        = new FilePair("txt", $"{prefix}01");

        DeleteAll(danglingFile, info.Received, info.Verified, file1.Verified, file1.Received, file2.Verified, file2.Received);
        File.WriteAllText(danglingFile, "");

        if (hasExistingReceived)
        {
            File.WriteAllText(info.Received, "");
            File.WriteAllText(file1.Received, "");
            File.WriteAllText(file2.Received, "");
        }


        await InitialVerifySplit(initialTarget, hasMatchingDiffTool, settings, info, file1, file2);

        if (!autoVerify)
        {
            RunClipboardCommand();
        }

        AssertNotExists(danglingFile);

        await ReVerifySplit(initialTarget, settings, info, file1, file2);

        await InitialVerifySplit(secondTarget, hasMatchingDiffTool, settings, info, file1, file2);

        if (!autoVerify)
        {
            RunClipboardCommand();
        }

        await ReVerifySplit(secondTarget, settings, info, file1, file2);
    }
Пример #3
0
    public async Task Split(
        bool hasExistingReceived,
        bool autoVerify)
    {
        var initialTarget = new TypeToSplit("info1", "value1", "value2");
        var secondTarget  = new TypeToSplit("info2", "value1.1", "value2.1");
        var settings      = new VerifySettings();

        if (autoVerify)
        {
            settings.AutoVerify();
        }
        var uniqueTestName = TestNameBuilder.GetUniqueTestName("Tests_Split", Info.OfMethod <Tests>("Split"), new object[] { hasExistingReceived, autoVerify });

        settings.UseParameters(hasExistingReceived, autoVerify);
        var prefix       = Path.Combine(SourceDirectory, $"{uniqueTestName}.");
        var danglingFile = $"{prefix}03.verified.txt";
        var info         = new FilePair("txt", $"{prefix}info");
        var file1        = new FilePair("txt", $"{prefix}00");
        var file2        = new FilePair("txt", $"{prefix}01");

        DeleteAll(danglingFile, info.Received, info.Verified, file1.Verified, file1.Received, file2.Verified, file2.Received);
        File.WriteAllText(danglingFile, "");

        if (hasExistingReceived)
        {
            File.WriteAllText(info.Received, "");
            File.WriteAllText(file1.Received, "");
            File.WriteAllText(file2.Received, "");
        }

        await InitialVerifySplit(initialTarget, true, settings, info, file1, file2);

        if (!autoVerify)
        {
            RunClipboardCommand();
        }

        AssertNotExists(danglingFile);

        await ReVerifySplit(initialTarget, settings, info, file1, file2);

        await InitialVerifySplit(secondTarget, true, settings, info, file1, file2);

        if (!autoVerify)
        {
            RunClipboardCommand();
        }

        await ReVerifySplit(secondTarget, settings, info, file1, file2);
    }
Пример #4
0
    async Task ReVerifySplit(TypeToSplit target, VerifySettings settings, FilePair info, FilePair file1, FilePair file2)
    {
        var infoCommand  = tool.BuildCommand(info.Received, info.Verified);
        var file1Command = tool.BuildCommand(file1.Received, file1.Verified);
        var file2Command = tool.BuildCommand(file2.Received, file2.Verified);

        ProcessCleanup.Refresh();
        await Verify(target, settings);

        ProcessCleanup.Refresh();
        AssertProcessNotRunning(infoCommand);
        AssertProcessNotRunning(file1Command);
        AssertProcessNotRunning(file2Command);

        AssertNotExists(info.Received);
        AssertExists(info.Verified);
        AssertNotExists(file1.Received);
        AssertExists(file1.Verified);
        AssertNotExists(file2.Received);
        AssertExists(file2.Verified);
    }