Title: [140301] trunk/Tools
- Revision
- 140301
- Author
- [email protected]
- Date
- 2013-01-20 23:10:43 -0800 (Sun, 20 Jan 2013)
Log Message
Extend diff_parser to support the --full-index output.
https://bugs.webkit.org/show_bug.cgi?id=107408
Patch by Tim 'mithro' Ansell <[email protected]> on 2013-01-20
Reviewed by Maciej Stachowiak.
* Scripts/webkitpy/common/checkout/diff_parser.py:
(git_diff_to_svn_diff):
* Scripts/webkitpy/common/checkout/diff_parser_unittest.py:
(DiffParserTest):
(DiffParserTest.test_git_diff_to_svn_diff):
(git_diff_to_svn_diff):
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (140300 => 140301)
--- trunk/Tools/ChangeLog 2013-01-21 07:05:16 UTC (rev 140300)
+++ trunk/Tools/ChangeLog 2013-01-21 07:10:43 UTC (rev 140301)
@@ -1,3 +1,17 @@
+2013-01-20 Tim 'mithro' Ansell <[email protected]>
+
+ Extend diff_parser to support the --full-index output.
+ https://bugs.webkit.org/show_bug.cgi?id=107408
+
+ Reviewed by Maciej Stachowiak.
+
+ * Scripts/webkitpy/common/checkout/diff_parser.py:
+ (git_diff_to_svn_diff):
+ * Scripts/webkitpy/common/checkout/diff_parser_unittest.py:
+ (DiffParserTest):
+ (DiffParserTest.test_git_diff_to_svn_diff):
+ (git_diff_to_svn_diff):
+
2013-01-20 Yoshifumi Inoue <[email protected]>
Dragging over an element with scrollbars should scroll the element when dragging near edges
Modified: trunk/Tools/Scripts/webkitpy/common/checkout/diff_parser.py (140300 => 140301)
--- trunk/Tools/Scripts/webkitpy/common/checkout/diff_parser.py 2013-01-21 07:05:16 UTC (rev 140300)
+++ trunk/Tools/Scripts/webkitpy/common/checkout/diff_parser.py 2013-01-21 07:10:43 UTC (rev 140301)
@@ -58,7 +58,7 @@
# These regexp patterns should be compiled once instead of every time.
conversion_patterns = (("^diff --git \w/(.+) \w/(?P<FilePath>.+)", lambda matched: "Index: " + matched.group('FilePath') + "\n"),
("^new file.*", lambda matched: "\n"),
- ("^index [0-9a-f]{7}\.\.[0-9a-f]{7} [0-9]{6}", lambda matched: "===================================================================\n"),
+ ("^index (([0-9a-f]{7}\.\.[0-9a-f]{7})|([0-9a-f]{40}\.\.[0-9a-f]{40})) [0-9]{6}", lambda matched: "===================================================================\n"),
("^--- \w/(?P<FilePath>.+)", lambda matched: "--- " + matched.group('FilePath') + "\n"),
("^\+\+\+ \w/(?P<FilePath>.+)", lambda matched: "+++ " + matched.group('FilePath') + "\n"))
Modified: trunk/Tools/Scripts/webkitpy/common/checkout/diff_parser_unittest.py (140300 => 140301)
--- trunk/Tools/Scripts/webkitpy/common/checkout/diff_parser_unittest.py 2013-01-21 07:05:16 UTC (rev 140300)
+++ trunk/Tools/Scripts/webkitpy/common/checkout/diff_parser_unittest.py 2013-01-21 07:10:43 UTC (rev 140301)
@@ -26,13 +26,16 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-import unittest
+import cStringIO as StringIO
+import unittest2 as unittest
import diff_parser
import re
from webkitpy.common.checkout.diff_test_data import DIFF_TEST_DATA
class DiffParserTest(unittest.TestCase):
+ maxDiff = None
+
def test_diff_parser(self, parser = None):
if not parser:
parser = diff_parser.DiffParser(DIFF_TEST_DATA.splitlines())
@@ -89,3 +92,48 @@
for prefix in prefixes:
patch = p.sub(lambda x: " %s/" % prefix[x.group(1)], DIFF_TEST_DATA)
self.test_diff_parser(diff_parser.DiffParser(patch.splitlines()))
+
+ def test_git_diff_to_svn_diff(self):
+ output = """\
+Index: Tools/Scripts/webkitpy/common/checkout/diff_parser.py
+===================================================================
+--- Tools/Scripts/webkitpy/common/checkout/diff_parser.py
++++ Tools/Scripts/webkitpy/common/checkout/diff_parser.py
+@@ -59,6 +59,7 @@ def git_diff_to_svn_diff(line):
+ A
+ B
+ C
++D
+ E
+ F
+"""
+
+ inputfmt = StringIO.StringIO("""\
+diff --git a/Tools/Scripts/webkitpy/common/checkout/diff_parser.py b/Tools/Scripts/webkitpy/common/checkout/diff_parser.py
+index 2ed552c4555db72df16b212547f2c125ae301a04..72870482000c0dba64ce4300ed782c03ee79b74f 100644
+--- a/Tools/Scripts/webkitpy/common/checkout/diff_parser.py
++++ b/Tools/Scripts/webkitpy/common/checkout/diff_parser.py
+@@ -59,6 +59,7 @@ def git_diff_to_svn_diff(line):
+ A
+ B
+ C
++D
+ E
+ F
+""")
+ shortfmt = StringIO.StringIO("""\
+diff --git a/Tools/Scripts/webkitpy/common/checkout/diff_parser.py b/Tools/Scripts/webkitpy/common/checkout/diff_parser.py
+index b48b162..f300960 100644
+--- a/Tools/Scripts/webkitpy/common/checkout/diff_parser.py
++++ b/Tools/Scripts/webkitpy/common/checkout/diff_parser.py
+@@ -59,6 +59,7 @@ def git_diff_to_svn_diff(line):
+ A
+ B
+ C
++D
+ E
+ F
+""")
+
+ self.assertMultiLineEqual(output, ''.join(diff_parser.git_diff_to_svn_diff(x) for x in shortfmt.readlines()))
+ self.assertMultiLineEqual(output, ''.join(diff_parser.git_diff_to_svn_diff(x) for x in inputfmt.readlines()))
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes