CheckCellTests.LCSTests.FixTranspositionTest2 C# (CSharp) Method

FixTranspositionTest2() private method

private FixTranspositionTest2 ( ) : void
return void
        public void FixTranspositionTest2()
        {
            var orig = "baaaq";
            var entered = "zzzaaabbq";

            var alignments = LongestCommonSubsequence.LeftAlignedLCS(orig, entered);
            var additions = LongestCommonSubsequence.GetAddedCharIndices(entered, alignments);
            var omissions = LongestCommonSubsequence.GetMissingCharIndices(orig, alignments);
            var fixedouts = LongestCommonSubsequence.FixTranspositions(alignments, additions, omissions, orig, entered);

            var entered2 = fixedouts.Item1;
            var alignments2 = fixedouts.Item2;
            var additions2 = fixedouts.Item3;
            var omissions2 = fixedouts.Item4;
            var deltas = fixedouts.Item5;

            Assert.AreEqual(3, deltas.Head);
            Assert.AreEqual("bzzzaaabq", entered2);
            int[] correct_additions = { 1, 2, 3, 7 };
            Assert.AreEqual(true, correct_additions.SequenceEqual<int>(additions2));
            int[] correct_omissions = { };
            Assert.AreEqual(true, correct_omissions.SequenceEqual<int>(omissions2));
            Tuple<int, int>[] correct_alignments = { new Tuple<int, int>(0, 0), new Tuple<int, int>(1, 4), new Tuple<int, int>(2, 5), new Tuple<int, int>(3, 6), new Tuple<int, int>(4, 8) };
            Assert.AreEqual(true, correct_alignments.SequenceEqual<Tuple<int, int>>(alignments2));
        }