Thread: [Winmerge-svn] SF.net SVN: winmerge:[6594] 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-03-25 06:39:30
|
Revision: 6594 http://winmerge.svn.sourceforge.net/winmerge/?rev=6594&view=rev Author: kimmov Date: 2009-03-25 06:39:09 +0000 (Wed, 25 Mar 2009) Log Message: ----------- Tests: Improve existing stringdiff bug tests. Fix one test having wrong assumptions. Now all tests pass again. Modified from Matthias Mayer's patch. 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-03-24 23:17:23 UTC (rev 6593) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-03-25 06:39:09 UTC (rev 6594) @@ -65,9 +65,9 @@ "LIB_PHP4_DIR=$(RPM_NAME)-$(RPM_VER)/usr/lib/php4", false, 0, 0, false, &diffs); EXPECT_EQ(1, diffs.size()); - wdiff *pDiff = diffs[0]; - if (diffs.size() == 1) + if (diffs.size() > 0) { + wdiff *pDiff = diffs[0]; EXPECT_EQ(0, pDiff->start[0]); EXPECT_EQ(0, pDiff->start[1]); EXPECT_EQ(46, pDiff->end[0]); @@ -84,9 +84,9 @@ "LIB_PHP4_DIR=$(RPM_NAME)-$(RPM_VER)/usr/lib/php4", false, 0, 1, false, &diffs); EXPECT_EQ(1, diffs.size()); - wdiff *pDiff = diffs[0]; - if (diffs.size() == 1) + if (diffs.size() > 0) { + wdiff *pDiff = diffs[0]; EXPECT_EQ(0, pDiff->start[0]); EXPECT_EQ(0, pDiff->start[1]); EXPECT_EQ(46, pDiff->end[0]); @@ -103,12 +103,12 @@ "LIB_PHP4_DIR=$(RPM_NAME)-$(RPM_VER)/usr/lib/php4", false, 0, 0, true, &diffs); EXPECT_EQ(1, diffs.size()); - wdiff *pDiff = diffs[0]; - if (diffs.size() == 1) + if (diffs.size() > 0) { + wdiff *pDiff = diffs[0]; EXPECT_EQ(0, pDiff->start[0]); - EXPECT_EQ(-1, pDiff->start[1]); - EXPECT_EQ(46, pDiff->end[0]); + EXPECT_EQ(47, pDiff->start[1]); + EXPECT_EQ(-1, pDiff->end[0]); EXPECT_EQ(47, pDiff->end[1]); } } @@ -123,9 +123,9 @@ "LIB_PHP4_DIR=$(RPM_NAME)-$(RPM_VER)/usr/lib/php4", false, 0, 1, false, &diffs); EXPECT_EQ(1, diffs.size()); - wdiff *pDiff = diffs[0]; - if (diffs.size() == 1) + if (diffs.size() > 0) { + wdiff *pDiff = diffs[0]; EXPECT_EQ(44, pDiff->start[0]); EXPECT_EQ(44, pDiff->start[1]); EXPECT_EQ(46, pDiff->end[0]); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-25 08:49:15
|
Revision: 6595 http://winmerge.svn.sourceforge.net/winmerge/?rev=6595&view=rev Author: kimmov Date: 2009-03-25 08:49:02 +0000 (Wed, 25 Mar 2009) Log Message: ----------- Tests: Add more stringdiff unit tests against earlier reported bugs. 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-03-25 06:39:09 UTC (rev 6594) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-03-25 08:49:02 UTC (rev 6595) @@ -56,6 +56,101 @@ // bool byte_level - are we word (false) or byte-level (true) diffing // std::vector<wdiff*> * pDiffs - resultting diff list + + // Sf.net bug #1685466 - char level diff + // (ENUMRESLANGPROC) added to middle + TEST_F(StringDiffsBugsTest, Bug_1685466_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), (ENUMRESLANGPROC)FindNextResLang, (LPARAM)&wLangID) == 0)", + "if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), FindNextResLang, (LPARAM)&wLangID) == 0)", + false, 0, 1, true, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(83, pDiff->start[0]); + EXPECT_EQ(0, pDiff->start[1]); + EXPECT_EQ(99, pDiff->end[0]); + EXPECT_EQ(-1, pDiff->end[1]); + } + } + + // Sf.net bug #1685466 - word level diff + // (ENUMRESLANGPROC) added to middle + TEST_F(StringDiffsBugsTest, Bug_1685466_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), (ENUMRESLANGPROC)FindNextResLang, (LPARAM)&wLangID) == 0)", + "if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), FindNextResLang, (LPARAM)&wLangID) == 0)", + false, 0, 1, false, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(83, pDiff->start[0]); + EXPECT_EQ(0, pDiff->start[1]); + EXPECT_EQ(114, pDiff->end[0]); + EXPECT_EQ(-1, pDiff->end[1]); + } + } + + // Sf.net bug #1939279 - char level diff + // various changes + TEST_F(StringDiffsBugsTest, Bug_1939279_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("[overlay_oid_origin, overlay_oid_target], [nil, nil]", + "[overlay_oid_origin, overlay_oid_target, origin_file_name, target_file_name], [nil, nil, \"origin.txt\", \"target.txt\"]", + false, 0, 1, true, &diffs); + EXPECT_EQ(6, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(39, pDiff->start[0]); + EXPECT_EQ(41, pDiff->start[1]); + EXPECT_EQ(39, pDiff->end[0]); + EXPECT_EQ(56, pDiff->end[1]); + } + } + + // Sf.net bug #1939279 - word level diff + // various changes + TEST_F(StringDiffsBugsTest, Bug_1939279_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("[overlay_oid_origin, overlay_oid_target], [nil, nil]", + "[overlay_oid_origin, overlay_oid_target, origin_file_name, target_file_name], [nil, nil, \"origin.txt\", \"target.txt\"]", + false, 0, 1, false, &diffs); + EXPECT_EQ(6, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(21, pDiff->start[0]); + EXPECT_EQ(21, pDiff->start[1]); + EXPECT_EQ(39, pDiff->end[0]); + EXPECT_EQ(38, pDiff->end[1]); + } + } + + // Sf.net bug #2022935 - char level diff + // Chars added to end + TEST_F(StringDiffsBugsTest, Bug_2022935) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("N42=Import", "N42=Importuj", + false, 0, 1, true, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(0, pDiff->start[0]); + EXPECT_EQ(10, pDiff->start[1]); + EXPECT_EQ(-1, pDiff->end[0]); + EXPECT_EQ(11, pDiff->end[1]); + } + } + // Sf.net bug #2638045 - word diff // Char added to end TEST_F(StringDiffsBugsTest, Bug_2638045) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-29 09:59:43
|
Revision: 6613 http://winmerge.svn.sourceforge.net/winmerge/?rev=6613&view=rev Author: kimmov Date: 2009-03-29 09:59:36 +0000 (Sun, 29 Mar 2009) Log Message: ----------- Tests: Stringdiff: Fix wrong assumptions in the test (fixing the test at the same time). 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-03-29 09:41:24 UTC (rev 6612) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-03-29 09:59:36 UTC (rev 6613) @@ -62,17 +62,18 @@ TEST_F(StringDiffsBugsTest, Bug_1685466_1) { std::vector<wdiff*> diffs; - sd_ComputeWordDiffs("if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), (ENUMRESLANGPROC)FindNextResLang, (LPARAM)&wLangID) == 0)", - "if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), FindNextResLang, (LPARAM)&wLangID) == 0)", + sd_ComputeWordDiffs( + "if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), (ENUMRESLANGPROC)FindNextResLang, (LPARAM)&wLangID) == 0)", + "if (EnumResourceLanguages(hinstLang, RT_VERSION, MAKEINTRESOURCE(VS_VERSION_INFO), FindNextResLang, (LPARAM)&wLangID) == 0)", false, 0, 1, true, &diffs); EXPECT_EQ(1, diffs.size()); if (diffs.size() > 0) { wdiff *pDiff = diffs[0]; EXPECT_EQ(83, pDiff->start[0]); - EXPECT_EQ(0, pDiff->start[1]); + EXPECT_EQ(83, pDiff->start[1]); EXPECT_EQ(99, pDiff->end[0]); - EXPECT_EQ(-1, pDiff->end[1]); + EXPECT_EQ(82, pDiff->end[1]); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-29 10:28:22
|
Revision: 6615 http://winmerge.svn.sourceforge.net/winmerge/?rev=6615&view=rev Author: kimmov Date: 2009-03-29 10:28:17 +0000 (Sun, 29 Mar 2009) Log Message: ----------- Tests: Stringdiff: Fix more invalid test assumptions. All stringdiff tests pass. Patch from Matthias Mayer 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-03-29 10:04:51 UTC (rev 6614) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-03-29 10:28:17 UTC (rev 6615) @@ -90,9 +90,9 @@ { wdiff *pDiff = diffs[0]; EXPECT_EQ(83, pDiff->start[0]); - EXPECT_EQ(0, pDiff->start[1]); + EXPECT_EQ(83, pDiff->start[1]); EXPECT_EQ(114, pDiff->end[0]); - EXPECT_EQ(-1, pDiff->end[1]); + EXPECT_EQ(97, pDiff->end[1]); } } @@ -109,9 +109,9 @@ { wdiff *pDiff = diffs[0]; EXPECT_EQ(39, pDiff->start[0]); - EXPECT_EQ(41, pDiff->start[1]); + EXPECT_EQ(21, pDiff->start[1]); EXPECT_EQ(39, pDiff->end[0]); - EXPECT_EQ(56, pDiff->end[1]); + EXPECT_EQ(20, pDiff->end[1]); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-23 20:30:47
|
Revision: 6706 http://winmerge.svn.sourceforge.net/winmerge/?rev=6706&view=rev Author: kimmov Date: 2009-04-23 20:30:32 +0000 (Thu, 23 Apr 2009) Log Message: ----------- Tests: Add stringdiff tests for bug item #2779834. 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-04-23 20:18:39 UTC (rev 6705) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-04-23 20:30:32 UTC (rev 6706) @@ -229,4 +229,43 @@ } } + // Sf.net bug #2779834 + // (int) added to right-side + // word-diff + TEST_F(StringDiffsBugsTest, Bug_2779834_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("if (nDiff < m_diffs.size())", + "if (nDiff < (int) m_diffs.size())", + false, 0, 0, false, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(12, pDiff->start[0]); + EXPECT_EQ(12, pDiff->start[1]); + EXPECT_EQ(11, pDiff->end[0]); + EXPECT_EQ(17, pDiff->end[1]); + } + } + + // Sf.net bug #2779834 + // (int) added to right-side + // char-diff + TEST_F(StringDiffsBugsTest, Bug_2779834_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("if (nDiff < m_diffs.size())", + "if (nDiff < (int) m_diffs.size())", + false, 0, 0, true, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(12, pDiff->start[0]); + EXPECT_EQ(12, pDiff->start[1]); + EXPECT_EQ(11, pDiff->end[0]); + EXPECT_EQ(17, pDiff->end[1]); + } + } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-28 20:34:09
|
Revision: 6710 http://winmerge.svn.sourceforge.net/winmerge/?rev=6710&view=rev Author: kimmov Date: 2009-04-28 20:34:00 +0000 (Tue, 28 Apr 2009) Log Message: ----------- Tests: Added unit tests for bug #2783185. 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-04-26 12:07:32 UTC (rev 6709) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-04-28 20:34:00 UTC (rev 6710) @@ -268,4 +268,45 @@ EXPECT_EQ(17, pDiff->end[1]); } } + + // Sf.net bug #2783185 + // 'private' added to right-side + // char-diff + TEST_F(StringDiffsBugsTest, Bug_2783185_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("const string ManualFolder = \"Manual\";", + "private const string ManualFolder = \"Manual\";", + false, 0, 0, true, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(0, pDiff->start[0]); + EXPECT_EQ(0, pDiff->start[1]); + EXPECT_EQ(0, pDiff->end[0]); + EXPECT_EQ(7, pDiff->end[1]); + } + } + + // Sf.net bug #2783185 + // 'private' added to right-side + // word-diff + TEST_F(StringDiffsBugsTest, Bug_2783185_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("const string ManualFolder = \"Manual\";", + "private const string ManualFolder = \"Manual\";", + false, 0, 0, false, &diffs); + EXPECT_EQ(1, diffs.size()); + if (diffs.size() > 0) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(0, pDiff->start[0]); + EXPECT_EQ(0, pDiff->start[1]); + EXPECT_EQ(0, pDiff->end[0]); + EXPECT_EQ(7, pDiff->end[1]); + } + } + } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
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. |
From: <ki...@us...> - 2009-05-18 17:49:26
|
Revision: 6762 http://winmerge.svn.sourceforge.net/winmerge/?rev=6762&view=rev Author: kimmov Date: 2009-05-18 17:49:24 +0000 (Mon, 18 May 2009) Log Message: ----------- Tests: Stringdiff: fix test assumptions according to Matthias's explanation in bug item. 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-18 11:54:47 UTC (rev 6761) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-18 17:49:24 UTC (rev 6762) @@ -322,15 +322,15 @@ if (diffs.size() > 1) { wdiff *pDiff = diffs[0]; - EXPECT_EQ(7, pDiff->start[0]); + EXPECT_EQ(4, pDiff->start[0]); EXPECT_EQ(7, pDiff->start[1]); - EXPECT_EQ(7, pDiff->end[0]); - EXPECT_EQ(8, pDiff->end[1]); + EXPECT_EQ(3, pDiff->end[0]); + EXPECT_EQ(7, pDiff->end[1]); pDiff = diffs[1]; - EXPECT_EQ(15, pDiff->start[0]); + EXPECT_EQ(12, pDiff->start[0]); EXPECT_EQ(16, pDiff->start[1]); - EXPECT_EQ(15, pDiff->end[0]); - EXPECT_EQ(17, pDiff->end[1]); + EXPECT_EQ(11, pDiff->end[0]); + EXPECT_EQ(16, pDiff->end[1]); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-05-18 19:30:33
|
Revision: 6763 http://winmerge.svn.sourceforge.net/winmerge/?rev=6763&view=rev Author: kimmov Date: 2009-05-18 19:30:18 +0000 (Mon, 18 May 2009) Log Message: ----------- Tests: Stringdiff: add unit tests for bug item ##2793479. 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-18 17:49:24 UTC (rev 6762) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-18 19:30:18 UTC (rev 6763) @@ -358,4 +358,56 @@ EXPECT_EQ(16, pDiff->end[1]); } } + + // Sf.net bug #2793479 + // ' ' (space) added before '(TCHAR' in left + // 'const' added before 'BYTE' in right + // char-diff + TEST_F(StringDiffsBugsTest, Bug_2793479_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("static int iTranslateBytesToBC (TCHAR* pd, BYTE* src, int srclen);", + "static int iTranslateBytesToBC(TCHAR* pd, const BYTE* src, int srclen);", + false, 0, 0, true, &diffs); + EXPECT_EQ(2, diffs.size()); + if (diffs.size() > 1) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(30, pDiff->start[0]); + EXPECT_EQ(7, pDiff->start[1]); + EXPECT_EQ(38, pDiff->end[0]); + EXPECT_EQ(7, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(12, pDiff->start[0]); + EXPECT_EQ(42, pDiff->start[1]); + EXPECT_EQ(43, pDiff->end[0]); + EXPECT_EQ(47, pDiff->end[1]); + } + } + + // Sf.net bug #2793479 + // ' ' (space) added before '(TCHAR' in left + // 'const' added before 'BYTE' in right + // word-diff + TEST_F(StringDiffsBugsTest, Bug_2793479_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("static int iTranslateBytesToBC (TCHAR* pd, BYTE* src, int srclen);", + "static int iTranslateBytesToBC(TCHAR* pd, const BYTE* src, int srclen);", + false, 0, 0, false, &diffs); + EXPECT_EQ(2, diffs.size()); + if (diffs.size() > 1) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(11, pDiff->start[0]); + EXPECT_EQ(11, pDiff->start[1]); + EXPECT_EQ(29, pDiff->end[0]); + EXPECT_EQ(36, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(31, pDiff->start[0]); + EXPECT_EQ(42, pDiff->start[1]); + EXPECT_EQ(38, pDiff->end[0]); + EXPECT_EQ(47, pDiff->end[1]); + } + } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-05-23 05:15:37
|
Revision: 6775 http://winmerge.svn.sourceforge.net/winmerge/?rev=6775&view=rev Author: kimmov Date: 2009-05-23 05:15:23 +0000 (Sat, 23 May 2009) Log Message: ----------- PATCH: [ 2794838 ] Stringdifftest to 6770 Submitted by Matthias Mayer Edits by Kimmo 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-23 04:47:16 UTC (rev 6774) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-23 05:15:23 UTC (rev 6775) @@ -104,7 +104,7 @@ sd_ComputeWordDiffs("[overlay_oid_origin, overlay_oid_target], [nil, nil]", "[overlay_oid_origin, overlay_oid_target, origin_file_name, target_file_name], [nil, nil, \"origin.txt\", \"target.txt\"]", false, 0, 1, true, &diffs); - EXPECT_EQ(6, diffs.size()); + EXPECT_EQ(4, diffs.size()); if (diffs.size() > 0) { wdiff *pDiff = diffs[0]; @@ -123,7 +123,7 @@ sd_ComputeWordDiffs("[overlay_oid_origin, overlay_oid_target], [nil, nil]", "[overlay_oid_origin, overlay_oid_target, origin_file_name, target_file_name], [nil, nil, \"origin.txt\", \"target.txt\"]", false, 0, 1, false, &diffs); - EXPECT_EQ(6, diffs.size()); + EXPECT_EQ(4, diffs.size()); if (diffs.size() > 0) { wdiff *pDiff = diffs[0]; @@ -284,7 +284,7 @@ wdiff *pDiff = diffs[0]; EXPECT_EQ(0, pDiff->start[0]); EXPECT_EQ(0, pDiff->start[1]); - EXPECT_EQ(0, pDiff->end[0]); + EXPECT_EQ(-1, pDiff->end[0]); EXPECT_EQ(7, pDiff->end[1]); } } @@ -304,7 +304,7 @@ wdiff *pDiff = diffs[0]; EXPECT_EQ(0, pDiff->start[0]); EXPECT_EQ(0, pDiff->start[1]); - EXPECT_EQ(0, pDiff->end[0]); + EXPECT_EQ(-1, pDiff->end[0]); EXPECT_EQ(7, pDiff->end[1]); } } @@ -374,13 +374,13 @@ { wdiff *pDiff = diffs[0]; EXPECT_EQ(30, pDiff->start[0]); - EXPECT_EQ(7, pDiff->start[1]); - EXPECT_EQ(38, pDiff->end[0]); - EXPECT_EQ(7, pDiff->end[1]); + EXPECT_EQ(30, pDiff->start[1]); + EXPECT_EQ(30, pDiff->end[0]); + EXPECT_EQ(29, pDiff->end[1]); pDiff = diffs[1]; - EXPECT_EQ(12, pDiff->start[0]); + EXPECT_EQ(43, pDiff->start[0]); EXPECT_EQ(42, pDiff->start[1]); - EXPECT_EQ(43, pDiff->end[0]); + EXPECT_EQ(42, pDiff->end[0]); EXPECT_EQ(47, pDiff->end[1]); } } @@ -405,9 +405,9 @@ EXPECT_EQ(36, pDiff->end[1]); pDiff = diffs[1]; EXPECT_EQ(31, pDiff->start[0]); - EXPECT_EQ(42, pDiff->start[1]); + EXPECT_EQ(38, pDiff->start[1]); EXPECT_EQ(38, pDiff->end[0]); - EXPECT_EQ(47, pDiff->end[1]); + EXPECT_EQ(37, pDiff->end[1]); } } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-05-23 11:13:07
|
Revision: 6779 http://winmerge.svn.sourceforge.net/winmerge/?rev=6779&view=rev Author: kimmov Date: 2009-05-23 11:12:58 +0000 (Sat, 23 May 2009) Log Message: ----------- PATCH: [ 2794838 ] Stringdifftest to 6770 Submitted by Matthias Mayer Edits by Kimmo 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-23 10:49:13 UTC (rev 6778) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-23 11:12:58 UTC (rev 6779) @@ -396,18 +396,19 @@ "static int iTranslateBytesToBC(TCHAR* pd, const BYTE* src, int srclen);", false, 0, 0, false, &diffs); EXPECT_EQ(2, diffs.size()); - if (diffs.size() > 1) + wdiff *pDiff; + if (diffs.size() >= 1) { - wdiff *pDiff = diffs[0]; + pDiff = diffs[0]; EXPECT_EQ(11, pDiff->start[0]); EXPECT_EQ(11, pDiff->start[1]); - EXPECT_EQ(29, pDiff->end[0]); + EXPECT_EQ(37, pDiff->end[0]); EXPECT_EQ(36, pDiff->end[1]); pDiff = diffs[1]; - EXPECT_EQ(31, pDiff->start[0]); - EXPECT_EQ(38, pDiff->start[1]); - EXPECT_EQ(38, pDiff->end[0]); - EXPECT_EQ(37, pDiff->end[1]); + EXPECT_EQ(43, pDiff->start[0]); + EXPECT_EQ(42, pDiff->start[1]); + EXPECT_EQ(42, pDiff->end[0]); + EXPECT_EQ(47, pDiff->end[1]); } } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-05-26 22:45:11
|
Revision: 6793 http://winmerge.svn.sourceforge.net/winmerge/?rev=6793&view=rev Author: kimmov Date: 2009-05-26 22:45:09 +0000 (Tue, 26 May 2009) Log Message: ----------- Tests: stringdiff: Add tests for bug item #2797067. 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-26 20:33:42 UTC (rev 6792) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-26 22:45:09 UTC (rev 6793) @@ -411,4 +411,124 @@ EXPECT_EQ(47, pDiff->end[1]); } } + + // Sf.net bug #2797067 + // '123' and '456 added in right side and 'x' separated from 'vwx' + // char-diff + TEST_F(StringDiffsBugsTest, Bug_2797067_1) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("abc def ghi jkl mno pqr stu vwx yz", + "abc def 123 ghi jkl mno pqr stu 456 vw x yz", + false, 0, 0, true, &diffs); + EXPECT_EQ(3, diffs.size()); + if (diffs.size() > 2) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(8, pDiff->start[0]); + EXPECT_EQ(8, pDiff->start[1]); + EXPECT_EQ(7, pDiff->end[0]); + EXPECT_EQ(11, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(28, pDiff->start[0]); + EXPECT_EQ(32, pDiff->start[1]); + EXPECT_EQ(28, pDiff->end[0]); + EXPECT_EQ(35, pDiff->end[1]); + pDiff = diffs[2]; + EXPECT_EQ(31, pDiff->start[0]); + EXPECT_EQ(38, pDiff->start[1]); + EXPECT_EQ(32, pDiff->end[0]); + EXPECT_EQ(39, pDiff->end[1]); + } + } + + // Sf.net bug #2797067 + // '123' and '456 added in right side and 'x' separated from 'vwx' + // word-diff + TEST_F(StringDiffsBugsTest, Bug_2797067_2) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("abc def ghi jkl mno pqr stu vwx yz", + "abc def 123 ghi jkl mno pqr stu 456 vw x yz", + false, 0, 0, false, &diffs); + EXPECT_EQ(3, diffs.size()); + if (diffs.size() > 2) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(8, pDiff->start[0]); + EXPECT_EQ(8, pDiff->start[1]); + EXPECT_EQ(7, pDiff->end[0]); + EXPECT_EQ(11, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(28, pDiff->start[0]); + EXPECT_EQ(32, pDiff->start[1]); + EXPECT_EQ(28, pDiff->end[0]); + EXPECT_EQ(35, pDiff->end[1]); + pDiff = diffs[2]; + EXPECT_EQ(31, pDiff->start[0]); + EXPECT_EQ(38, pDiff->start[1]); + EXPECT_EQ(32, pDiff->end[0]); + EXPECT_EQ(39, pDiff->end[1]); + } + } + + // Sf.net bug #2797067 + // '123', '456' and last 'r' added to right side + // char-diff + TEST_F(StringDiffsBugsTest, Bug_2797067_3) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("abc def ghi jkl mno pqr stu vwx yzr", + "abc def 123ghi jkl mno pqr stu 456vwx yzrr", + false, 0, 0, true, &diffs); + EXPECT_EQ(3, diffs.size()); + if (diffs.size() > 2) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(8, pDiff->start[0]); + EXPECT_EQ(8, pDiff->start[1]); + EXPECT_EQ(7, pDiff->end[0]); + EXPECT_EQ(10, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(28, pDiff->start[0]); + EXPECT_EQ(32, pDiff->start[1]); + EXPECT_EQ(28, pDiff->end[0]); + EXPECT_EQ(34, pDiff->end[1]); + pDiff = diffs[2]; + EXPECT_EQ(35, pDiff->start[0]); + EXPECT_EQ(41, pDiff->start[1]); + EXPECT_EQ(35, pDiff->end[0]); + EXPECT_EQ(42, pDiff->end[1]); + } + } + + // Sf.net bug #2797067 + // '123', '456' and last 'r' added to right side + // word-diff + TEST_F(StringDiffsBugsTest, Bug_2797067_4) + { + std::vector<wdiff*> diffs; + sd_ComputeWordDiffs("abc def ghi jkl mno pqr stu vwx yzr", + "abc def 123ghi jkl mno pqr stu 456vwx yzrr", + false, 0, 0, false, &diffs); + EXPECT_EQ(3, diffs.size()); + if (diffs.size() > 2) + { + wdiff *pDiff = diffs[0]; + EXPECT_EQ(8, pDiff->start[0]); + EXPECT_EQ(8, pDiff->start[1]); + EXPECT_EQ(7, pDiff->end[0]); + EXPECT_EQ(10, pDiff->end[1]); + pDiff = diffs[1]; + EXPECT_EQ(28, pDiff->start[0]); + EXPECT_EQ(32, pDiff->start[1]); + EXPECT_EQ(28, pDiff->end[0]); + EXPECT_EQ(34, pDiff->end[1]); + pDiff = diffs[2]; + EXPECT_EQ(35, pDiff->start[0]); + EXPECT_EQ(41, pDiff->start[1]); + EXPECT_EQ(35, pDiff->end[0]); + EXPECT_EQ(42, pDiff->end[1]); + } + } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-05-28 18:30:03
|
Revision: 6798 http://winmerge.svn.sourceforge.net/winmerge/?rev=6798&view=rev Author: kimmov Date: 2009-05-28 18:29:52 +0000 (Thu, 28 May 2009) Log Message: ----------- PATCH: [ 2797537 ] stringdiffs_test_bugs 6793 Submitted by Matthias Mayer 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-28 12:57:29 UTC (rev 6797) +++ trunk/Testing/GoogleTest/StringDiffs/stringdiffs_test_bugs.cpp 2009-05-28 18:29:52 UTC (rev 6798) @@ -397,7 +397,7 @@ false, 0, 0, false, &diffs); EXPECT_EQ(2, diffs.size()); wdiff *pDiff; - if (diffs.size() >= 1) + if (diffs.size() > 1) { pDiff = diffs[0]; EXPECT_EQ(11, pDiff->start[0]); @@ -432,13 +432,13 @@ pDiff = diffs[1]; EXPECT_EQ(28, pDiff->start[0]); EXPECT_EQ(32, pDiff->start[1]); - EXPECT_EQ(28, pDiff->end[0]); - EXPECT_EQ(35, pDiff->end[1]); + EXPECT_EQ(30, pDiff->end[0]); + EXPECT_EQ(34, pDiff->end[1]); pDiff = diffs[2]; - EXPECT_EQ(31, pDiff->start[0]); - EXPECT_EQ(38, pDiff->start[1]); - EXPECT_EQ(32, pDiff->end[0]); - EXPECT_EQ(39, pDiff->end[1]); + EXPECT_EQ(32, pDiff->start[0]); + EXPECT_EQ(36, pDiff->start[1]); + EXPECT_EQ(31, pDiff->end[0]); + EXPECT_EQ(40, pDiff->end[1]); } } @@ -462,13 +462,13 @@ pDiff = diffs[1]; EXPECT_EQ(28, pDiff->start[0]); EXPECT_EQ(32, pDiff->start[1]); - EXPECT_EQ(28, pDiff->end[0]); - EXPECT_EQ(35, pDiff->end[1]); + EXPECT_EQ(30, pDiff->end[0]); + EXPECT_EQ(34, pDiff->end[1]); pDiff = diffs[2]; - EXPECT_EQ(31, pDiff->start[0]); - EXPECT_EQ(38, pDiff->start[1]); - EXPECT_EQ(32, pDiff->end[0]); - EXPECT_EQ(39, pDiff->end[1]); + EXPECT_EQ(32, pDiff->start[0]); + EXPECT_EQ(36, pDiff->start[1]); + EXPECT_EQ(31, pDiff->end[0]); + EXPECT_EQ(40, pDiff->end[1]); } } @@ -491,14 +491,14 @@ EXPECT_EQ(10, pDiff->end[1]); pDiff = diffs[1]; EXPECT_EQ(28, pDiff->start[0]); - EXPECT_EQ(32, pDiff->start[1]); - EXPECT_EQ(28, pDiff->end[0]); - EXPECT_EQ(34, pDiff->end[1]); + EXPECT_EQ(31, pDiff->start[1]); + EXPECT_EQ(27, pDiff->end[0]); + EXPECT_EQ(33, pDiff->end[1]); pDiff = diffs[2]; - EXPECT_EQ(35, pDiff->start[0]); + EXPECT_EQ(32, pDiff->start[0]); EXPECT_EQ(41, pDiff->start[1]); - EXPECT_EQ(35, pDiff->end[0]); - EXPECT_EQ(42, pDiff->end[1]); + EXPECT_EQ(31, pDiff->end[0]); + EXPECT_EQ(41, pDiff->end[1]); } } @@ -517,18 +517,18 @@ wdiff *pDiff = diffs[0]; EXPECT_EQ(8, pDiff->start[0]); EXPECT_EQ(8, pDiff->start[1]); - EXPECT_EQ(7, pDiff->end[0]); - EXPECT_EQ(10, pDiff->end[1]); + EXPECT_EQ(10, pDiff->end[0]); + EXPECT_EQ(13, pDiff->end[1]); pDiff = diffs[1]; EXPECT_EQ(28, pDiff->start[0]); - EXPECT_EQ(32, pDiff->start[1]); - EXPECT_EQ(28, pDiff->end[0]); - EXPECT_EQ(34, pDiff->end[1]); + EXPECT_EQ(31, pDiff->start[1]); + EXPECT_EQ(30, pDiff->end[0]); + EXPECT_EQ(36, pDiff->end[1]); pDiff = diffs[2]; - EXPECT_EQ(35, pDiff->start[0]); - EXPECT_EQ(41, pDiff->start[1]); - EXPECT_EQ(35, pDiff->end[0]); - EXPECT_EQ(42, pDiff->end[1]); + EXPECT_EQ(32, pDiff->start[0]); + EXPECT_EQ(38, pDiff->start[1]); + EXPECT_EQ(34, pDiff->end[0]); + EXPECT_EQ(41, pDiff->end[1]); } } } // namespace This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |