[Winmerge-svn] SF.net SVN: winmerge:[6753] trunk/Testing/GoogleTest/StringDiffs/ stringdiffs_test_b
Windows visual diff and merge for files and directories
Brought to you by:
christianlist,
grimmdp
From: <ki...@us...> - 2009-05-15 18:03:43
|
Revision: 6753 http://winmerge.svn.sourceforge.net/winmerge/?rev=6753&view=rev Author: kimmov Date: 2009-05-15 18:03:35 +0000 (Fri, 15 May 2009) Log Message: ----------- Tests: stringdiff: adding unit test for sf.net bug #2791879 Modified Paths: -------------- trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp Modified: trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp =================================================================== --- trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-15 16:41:46 UTC (rev 6752) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-15 18:03:35 UTC (rev 6753) @@ -309,4 +309,53 @@ } } + // Sf.net bug #2791879 + // 'x' added in right side at end of second and fourth words + // char-diff + TEST_F(StringDiffsBugsTest, Bug_2791879_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("abc def ghi jkl mno", + "abc defx ghi jklx mno", + false, 0, 0, true, &diffs); + EXPECT_EQ(2, diffs.size()); + if (diffs.size() > 1) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(7, pDiff->start[0]); + EXPECT_EQ(7, pDiff->start[1]); + EXPECT_EQ(7, pDiff->end[0]); + EXPECT_EQ(8, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(15, pDiff->start[0]); + EXPECT_EQ(16, pDiff->start[1]); + EXPECT_EQ(15, pDiff->end[0]); + EXPECT_EQ(17, pDiff->end[1]); + } + } + + // Sf.net bug #2791879 + // 'x' added in right side at end of second and fourth words + // word-diff + TEST_F(StringDiffsBugsTest, Bug_2791879_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("abc def ghi jkl mno", + "abc defx ghi jklx mno", + false, 0, 0, false, &diffs); + EXPECT_EQ(2, diffs.size()); + if (diffs.size() > 1) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(4, pDiff->start[0]); + EXPECT_EQ(4, pDiff->start[1]); + EXPECT_EQ(6, pDiff->end[0]); + EXPECT_EQ(7, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(12, pDiff->start[0]); + EXPECT_EQ(13, pDiff->start[1]); + EXPECT_EQ(14, pDiff->end[0]); + EXPECT_EQ(16, pDiff->end[1]); + } + } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |