1d0825bca7fe65beaee391d30da42e937db621564Steve Block#!/usr/bin/perl -w 2d0825bca7fe65beaee391d30da42e937db621564Steve Block# 3d0825bca7fe65beaee391d30da42e937db621564Steve Block# Copyright (C) 2010 Chris Jerdonek (chris.jerdonek@gmail.com) 4d0825bca7fe65beaee391d30da42e937db621564Steve Block# 5d0825bca7fe65beaee391d30da42e937db621564Steve Block# Redistribution and use in source and binary forms, with or without 6d0825bca7fe65beaee391d30da42e937db621564Steve Block# modification, are permitted provided that the following conditions 7d0825bca7fe65beaee391d30da42e937db621564Steve Block# are met: 8d0825bca7fe65beaee391d30da42e937db621564Steve Block# 1. Redistributions of source code must retain the above copyright 9d0825bca7fe65beaee391d30da42e937db621564Steve Block# notice, this list of conditions and the following disclaimer. 10d0825bca7fe65beaee391d30da42e937db621564Steve Block# 2. Redistributions in binary form must reproduce the above copyright 11d0825bca7fe65beaee391d30da42e937db621564Steve Block# notice, this list of conditions and the following disclaimer in the 12d0825bca7fe65beaee391d30da42e937db621564Steve Block# documentation and/or other materials provided with the distribution. 13d0825bca7fe65beaee391d30da42e937db621564Steve Block# 14d0825bca7fe65beaee391d30da42e937db621564Steve Block# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY 15d0825bca7fe65beaee391d30da42e937db621564Steve Block# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 16d0825bca7fe65beaee391d30da42e937db621564Steve Block# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 17d0825bca7fe65beaee391d30da42e937db621564Steve Block# DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY 18d0825bca7fe65beaee391d30da42e937db621564Steve Block# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 19d0825bca7fe65beaee391d30da42e937db621564Steve Block# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 20d0825bca7fe65beaee391d30da42e937db621564Steve Block# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 21d0825bca7fe65beaee391d30da42e937db621564Steve Block# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22d0825bca7fe65beaee391d30da42e937db621564Steve Block# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 23d0825bca7fe65beaee391d30da42e937db621564Steve Block# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24d0825bca7fe65beaee391d30da42e937db621564Steve Block 25d0825bca7fe65beaee391d30da42e937db621564Steve Block# Unit tests of parseDiff(). 26d0825bca7fe65beaee391d30da42e937db621564Steve Block 27d0825bca7fe65beaee391d30da42e937db621564Steve Blockuse strict; 28d0825bca7fe65beaee391d30da42e937db621564Steve Blockuse warnings; 29d0825bca7fe65beaee391d30da42e937db621564Steve Block 30d0825bca7fe65beaee391d30da42e937db621564Steve Blockuse Test::More; 31d0825bca7fe65beaee391d30da42e937db621564Steve Blockuse VCSUtils; 32d0825bca7fe65beaee391d30da42e937db621564Steve Block 33d0825bca7fe65beaee391d30da42e937db621564Steve Block# The array of test cases. 34d0825bca7fe65beaee391d30da42e937db621564Steve Blockmy @testCaseHashRefs = ( 35d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 36d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 37d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "SVN: simple", 38d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 39d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 40d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 41d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53052) 42d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 43d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,3 +1,4 @@ 44d0825bca7fe65beaee391d30da42e937db621564Steve Block+ 45d0825bca7fe65beaee391d30da42e937db621564Steve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 46d0825bca7fe65beaee391d30da42e937db621564Steve Block 47d0825bca7fe65beaee391d30da42e937db621564Steve Block all: 48d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 4921939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 506c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 51d0825bca7fe65beaee391d30da42e937db621564Steve Block svnConvertedText => <<'END', # Same as input text 52d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 53d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 54d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53052) 55d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 56d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,3 +1,4 @@ 57d0825bca7fe65beaee391d30da42e937db621564Steve Block+ 58d0825bca7fe65beaee391d30da42e937db621564Steve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 59d0825bca7fe65beaee391d30da42e937db621564Steve Block 60d0825bca7fe65beaee391d30da42e937db621564Steve Block all: 61d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 62d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile", 6321939df44de1705786c545cd1bf519d47250322dBen Murdoch isSvn => 1, 64d0825bca7fe65beaee391d30da42e937db621564Steve Block sourceRevision => "53052", 656c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 6621939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 6721939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 6821939df44de1705786c545cd1bf519d47250322dBen Murdoch}, 6921939df44de1705786c545cd1bf519d47250322dBen Murdoch{ 7021939df44de1705786c545cd1bf519d47250322dBen Murdoch # New test 7121939df44de1705786c545cd1bf519d47250322dBen Murdoch diffName => "SVN: binary file (isBinary true)", 7221939df44de1705786c545cd1bf519d47250322dBen Murdoch inputText => <<'END', 7321939df44de1705786c545cd1bf519d47250322dBen MurdochIndex: test_file.swf 7421939df44de1705786c545cd1bf519d47250322dBen Murdoch=================================================================== 7521939df44de1705786c545cd1bf519d47250322dBen MurdochCannot display: file marked as a binary type. 7621939df44de1705786c545cd1bf519d47250322dBen Murdochsvn:mime-type = application/octet-stream 7721939df44de1705786c545cd1bf519d47250322dBen Murdoch 7821939df44de1705786c545cd1bf519d47250322dBen MurdochProperty changes on: test_file.swf 7921939df44de1705786c545cd1bf519d47250322dBen Murdoch___________________________________________________________________ 8021939df44de1705786c545cd1bf519d47250322dBen MurdochName: svn:mime-type 8121939df44de1705786c545cd1bf519d47250322dBen Murdoch + application/octet-stream 8221939df44de1705786c545cd1bf519d47250322dBen Murdoch 8321939df44de1705786c545cd1bf519d47250322dBen Murdoch 8421939df44de1705786c545cd1bf519d47250322dBen MurdochQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 8521939df44de1705786c545cd1bf519d47250322dBen MurdochEND 8621939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 876c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 8821939df44de1705786c545cd1bf519d47250322dBen Murdoch svnConvertedText => <<'END', # Same as input text 8921939df44de1705786c545cd1bf519d47250322dBen MurdochIndex: test_file.swf 9021939df44de1705786c545cd1bf519d47250322dBen Murdoch=================================================================== 9121939df44de1705786c545cd1bf519d47250322dBen MurdochCannot display: file marked as a binary type. 9221939df44de1705786c545cd1bf519d47250322dBen Murdochsvn:mime-type = application/octet-stream 9321939df44de1705786c545cd1bf519d47250322dBen Murdoch 9421939df44de1705786c545cd1bf519d47250322dBen Murdoch 9521939df44de1705786c545cd1bf519d47250322dBen Murdoch 9621939df44de1705786c545cd1bf519d47250322dBen MurdochQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 9721939df44de1705786c545cd1bf519d47250322dBen MurdochEND 9821939df44de1705786c545cd1bf519d47250322dBen Murdoch indexPath => "test_file.swf", 9921939df44de1705786c545cd1bf519d47250322dBen Murdoch isBinary => 1, 10021939df44de1705786c545cd1bf519d47250322dBen Murdoch isSvn => 1, 1016c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 10221939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 10321939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 104d0825bca7fe65beaee391d30da42e937db621564Steve Block}, 105d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 106d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 107e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: binary file (isBinary true) using Windows line endings", 108e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 109e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 110e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 111e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 112e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 113e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 114e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: test_file.swf 115e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 116e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockName: svn:mime-type 117e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + application/octet-stream 118e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 119e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 120e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 121e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 122e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 123e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 124e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 125e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block svnConvertedText => toWindowsLineEndings(<<'END', # Same as input text 126e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 127e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 128e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 129e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 130e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 131e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 132e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 133e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 134e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 135e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 136e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "test_file.swf", 137e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isBinary => 1, 138e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 139e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 140e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blockundef], 141e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => undef, 142e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 143e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 144e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 145d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "SVN: leading junk", 146d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 147d0825bca7fe65beaee391d30da42e937db621564Steve Block 148d0825bca7fe65beaee391d30da42e937db621564Steve BlockLEADING JUNK 149d0825bca7fe65beaee391d30da42e937db621564Steve Block 150d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 151d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 152d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53052) 153d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 154d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,3 +1,4 @@ 155d0825bca7fe65beaee391d30da42e937db621564Steve Block+ 156d0825bca7fe65beaee391d30da42e937db621564Steve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 157d0825bca7fe65beaee391d30da42e937db621564Steve Block 158d0825bca7fe65beaee391d30da42e937db621564Steve Block all: 159d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 16021939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 1616c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 162d0825bca7fe65beaee391d30da42e937db621564Steve Block svnConvertedText => <<'END', # Same as input text 163d0825bca7fe65beaee391d30da42e937db621564Steve Block 164d0825bca7fe65beaee391d30da42e937db621564Steve BlockLEADING JUNK 165d0825bca7fe65beaee391d30da42e937db621564Steve Block 166d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 167d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 168d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53052) 169d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 170d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,3 +1,4 @@ 171d0825bca7fe65beaee391d30da42e937db621564Steve Block+ 172d0825bca7fe65beaee391d30da42e937db621564Steve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 173d0825bca7fe65beaee391d30da42e937db621564Steve Block 174d0825bca7fe65beaee391d30da42e937db621564Steve Block all: 175d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 176d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile", 17721939df44de1705786c545cd1bf519d47250322dBen Murdoch isSvn => 1, 178d0825bca7fe65beaee391d30da42e937db621564Steve Block sourceRevision => "53052", 1796c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 18021939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 18121939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 182d0825bca7fe65beaee391d30da42e937db621564Steve Block}, 183d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 184d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 185d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "SVN: copied file", 186d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 187d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile_new 188d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 189d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile_new (revision 53131) (from Makefile:53131) 190d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile_new (working copy) 191d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -0,0 +1,1 @@ 192d0825bca7fe65beaee391d30da42e937db621564Steve Block+MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 193d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 19421939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 1956c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 196d0825bca7fe65beaee391d30da42e937db621564Steve Block copiedFromPath => "Makefile", 197d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile_new", 198d0825bca7fe65beaee391d30da42e937db621564Steve Block sourceRevision => "53131", 1996c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 20021939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 20121939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 202d0825bca7fe65beaee391d30da42e937db621564Steve Block}, 203d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 204d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 205d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "SVN: two diffs", 206d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 207d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 208d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 209d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53131) 210d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 211d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 +0,0 @@ 212d0825bca7fe65beaee391d30da42e937db621564Steve Block-MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 213d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile_new 214d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 215d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile_new (revision 53131) (from Makefile:53131) 216d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 21721939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 2186c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 219d0825bca7fe65beaee391d30da42e937db621564Steve Block svnConvertedText => <<'END', 220d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 221d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 222d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53131) 223d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 224d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 +0,0 @@ 225d0825bca7fe65beaee391d30da42e937db621564Steve Block-MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 226d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 227d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile", 22821939df44de1705786c545cd1bf519d47250322dBen Murdoch isSvn => 1, 229d0825bca7fe65beaee391d30da42e937db621564Steve Block sourceRevision => "53131", 2306c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 23121939df44de1705786c545cd1bf519d47250322dBen Murdoch"Index: Makefile_new\n"], 23221939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => "===================================================================\n", 233d0825bca7fe65beaee391d30da42e937db621564Steve Block}, 234d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 235d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 236d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "SVN: SVN diff followed by Git diff", # Should not recognize Git start 237d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 238d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 239d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 240d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53131) 241d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 242d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 +0,0 @@ 243d0825bca7fe65beaee391d30da42e937db621564Steve Block-MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 244d0825bca7fe65beaee391d30da42e937db621564Steve Blockdiff --git a/Makefile b/Makefile 245d0825bca7fe65beaee391d30da42e937db621564Steve Blockindex f5d5e74..3b6aa92 100644 246d0825bca7fe65beaee391d30da42e937db621564Steve Block--- a/Makefile 247d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ b/Makefile 248d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 1,1 @@ public: 249d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 25021939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 2516c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 252d0825bca7fe65beaee391d30da42e937db621564Steve Block svnConvertedText => <<'END', # Same as input text 253d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 254d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 255d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile (revision 53131) 256d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile (working copy) 257d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 +0,0 @@ 258d0825bca7fe65beaee391d30da42e937db621564Steve Block-MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKitTools 259d0825bca7fe65beaee391d30da42e937db621564Steve Blockdiff --git a/Makefile b/Makefile 260d0825bca7fe65beaee391d30da42e937db621564Steve Blockindex f5d5e74..3b6aa92 100644 261d0825bca7fe65beaee391d30da42e937db621564Steve Block--- a/Makefile 262d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ b/Makefile 263d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 1,1 @@ public: 264d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 265d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile", 26621939df44de1705786c545cd1bf519d47250322dBen Murdoch isSvn => 1, 267d0825bca7fe65beaee391d30da42e937db621564Steve Block sourceRevision => "53131", 2686c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 26921939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 27021939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 27121939df44de1705786c545cd1bf519d47250322dBen Murdoch}, 27221939df44de1705786c545cd1bf519d47250322dBen Murdoch#### 273e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke# Property Changes: Simple 274e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke## 275e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 276e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 277e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: file change diff with property change diff", 278e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 279e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 280e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 281e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 282e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 283e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 284e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 285e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 286e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 287e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 288e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 289e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile 290e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 291e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:executable 292e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 293e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 294e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 295e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 296e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 297e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 298e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 299e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 300e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 301e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 302e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 303e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 304e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 305e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 306e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 307e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 308e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => 1, 309e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "Makefile", 310e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 311e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke sourceRevision => "60021", 312e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 313e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkeundef], 314e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => undef, 315e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 316e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 317e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 318e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: file change diff, followed by property change diff on different file", 319e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 320e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 321e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 322e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 323e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 324e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 325e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 326e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 327e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 328e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 329e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 330e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile.shared 331e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 332e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:executable 333e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 334e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 335e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 336e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 337e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 338e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 339e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 340e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 341e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 342e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 343e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 344e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 345e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 346e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 347e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 348e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 349e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "Makefile", 350e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 351e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke sourceRevision => "60021", 352e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 353e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Property changes on: Makefile.shared\n"], 354e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "___________________________________________________________________\n", 355e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 356e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 357e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 358e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: property diff, followed by file change diff", 359e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 360e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile 361e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 362e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeDeleted: svn:executable 363e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke - * 364e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 365e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile.shared 366e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 367e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile.shared (revision 60021) 368e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile.shared (working copy) 369e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 370e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 371e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeSCRIPTS_PATH ?= ../WebKitTools/Scripts 372e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeXCODE_OPTIONS = `perl -I$(SCRIPTS_PATH) -Mwebkitdirs -e 'print XcodeOptionString()'` $(ARGS) 373e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 374e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 375e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 376e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => -1, 377e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "Makefile", 378e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 379e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 380e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Index: Makefile.shared\n"], 381e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "===================================================================\n", 382e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 383e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 384e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 385e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: property diff, followed by file change diff using Windows line endings", 386e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 387e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile 388e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 389e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockDeleted: svn:executable 390e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block - * 391e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 392e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile.shared 393e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 394e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile.shared (revision 60021) 395e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile.shared (working copy) 396e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 397e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 398e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockSCRIPTS_PATH ?= ../WebKitTools/Scripts 399e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockXCODE_OPTIONS = `perl -I$(SCRIPTS_PATH) -Mwebkitdirs -e 'print XcodeOptionString()'` $(ARGS) 400e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 401e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 402e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 403e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 404e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block executableBitDelta => -1, 405e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "Makefile", 406e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 407e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 408e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block"Index: Makefile.shared\r\n"], 409e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => "===================================================================\r\n", 410e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 411e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 412e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 413e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: copied file with property change", 414e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 415e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: NMakefile 416e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 417e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- NMakefile (revision 60021) (from Makefile:60021) 418e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ NMakefile (working copy) 419e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -0,0 +1,1 @@ 420e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 421e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 422e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: NMakefile 423e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 424e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeAdded: svn:executable 425e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 426e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 427e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 428e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 429e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke copiedFromPath => "Makefile", 430e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => 1, 431e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "NMakefile", 432e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke sourceRevision => "60021", 433e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 434e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkeundef], 435e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => undef, 436e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 437e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 438e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 439e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: two consecutive property diffs", 440e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 441e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile 442e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 443e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeAdded: svn:executable 444e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 445e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 446e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 447e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile.shared 448e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 449e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeAdded: svn:executable 450e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 451e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 452e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 453e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 454e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => 1, 455e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "Makefile", 456e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 457e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 458e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Property changes on: Makefile.shared\n"], 459e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "___________________________________________________________________\n", 460e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 461e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 462e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 463e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: two consecutive property diffs using Windows line endings", 464e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 465e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile 466e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 467e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockAdded: svn:executable 468e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + * 469e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 470e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 471e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile.shared 472e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 473e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockAdded: svn:executable 474e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + * 475e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 476e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 477e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 478e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 479e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block executableBitDelta => 1, 480e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "Makefile", 481e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 482e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 483e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block"Property changes on: Makefile.shared\r\n"], 484e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => "___________________________________________________________________\r\n", 485e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 486e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke#### 487e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke# Property Changes: Binary files 488e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke## 489e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 490e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 491e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: binary file with executable bit change", 492e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 493e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: test_file.swf 494e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 495e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeCannot display: file marked as a binary type. 496e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkesvn:mime-type = application/octet-stream 497e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 498e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: test_file.swf 499e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 500e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:mime-type 501e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + application/octet-stream 502e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:executable 503e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 504e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 505e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 506e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 507e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 508e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 509e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 510e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 511e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: test_file.swf 512e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 513e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeCannot display: file marked as a binary type. 514e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkesvn:mime-type = application/octet-stream 515e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 516e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 517e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 518e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 519e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 520e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => 1, 521e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "test_file.swf", 522e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isBinary => 1, 523e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 524e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 525e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkeundef], 526e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => undef, 527e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 528e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 529e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 530e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: binary file with executable bit change usng Windows line endings", 531e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 532e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 533e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 534e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 535e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 536e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 537e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: test_file.swf 538e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 539e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockName: svn:mime-type 540e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + application/octet-stream 541e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockName: svn:executable 542e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + * 543e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 544e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 545e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 546e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 547e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 548e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 549e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 550e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block svnConvertedText => toWindowsLineEndings(<<'END', # Same as input text 551e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 552e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 553e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 554e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 555e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 556e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 557e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 558e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 559e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 560e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 561e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block executableBitDelta => 1, 562e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "test_file.swf", 563e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isBinary => 1, 564e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 565e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 566e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blockundef], 567e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => undef, 568e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 569e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 570e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 571e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: binary file followed by property change on different file", 572e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 573e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: test_file.swf 574e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 575e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeCannot display: file marked as a binary type. 576e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkesvn:mime-type = application/octet-stream 577e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 578e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: test_file.swf 579e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 580e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:mime-type 581e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + application/octet-stream 582e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 583e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 584e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 585e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 586e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile 587e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 588e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeAdded: svn:executable 589e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 590e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 591e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 592e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 593e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 594e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: test_file.swf 595e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 596e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeCannot display: file marked as a binary type. 597e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkesvn:mime-type = application/octet-stream 598e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 599e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 600e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 601e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 602e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 603e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 604e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "test_file.swf", 605e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isBinary => 1, 606e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 607e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 608e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Property changes on: Makefile\n"], 609e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "___________________________________________________________________\n", 610e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 611e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 612e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 613e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: binary file followed by property change on different file using Windows line endings", 614e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 615e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 616e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 617e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 618e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 619e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 620e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: test_file.swf 621e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 622e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockName: svn:mime-type 623e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + application/octet-stream 624e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 625e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 626e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 627e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 628e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile 629e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 630e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockAdded: svn:executable 631e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + * 632e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 633e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 634e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 635e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 636e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block svnConvertedText => toWindowsLineEndings(<<'END', # Same as input text 637e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 638e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 639e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 640e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 641e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 642e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 643e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 644e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 645e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 646e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 647e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 648e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "test_file.swf", 649e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isBinary => 1, 650e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 651e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 652e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block"Property changes on: Makefile\r\n"], 653e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => "___________________________________________________________________\r\n", 654e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 655e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 656e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 657e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: binary file followed by file change on different file", 658e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 659e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: test_file.swf 660e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 661e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeCannot display: file marked as a binary type. 662e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkesvn:mime-type = application/octet-stream 663e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 664e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: test_file.swf 665e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 666e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:mime-type 667e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + application/octet-stream 668e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 669e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 670e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 671e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 672e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 673e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 674e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 675e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 676e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 677e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 678e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 679e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 680e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 681e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 682e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 683e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 684e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 685e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: test_file.swf 686e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 687e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeCannot display: file marked as a binary type. 688e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarkesvn:mime-type = application/octet-stream 689e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 690e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 691e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 692e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 693e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 694e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 695e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "test_file.swf", 696e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isBinary => 1, 697e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 698e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 699e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Index: Makefile\n"], 700e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "===================================================================\n", 701e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 702e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 703e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 704e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: binary file followed by file change on different file using Windows line endings", 705e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 706e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 707e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 708e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 709e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 710e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 711e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: test_file.swf 712e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 713e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockName: svn:mime-type 714e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + application/octet-stream 715e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 716e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 717e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 718e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 719e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile 720e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 721e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile (revision 60021) 722e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile (working copy) 723e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 724e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 725e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 726e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 727e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block all: 728e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 729e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 730e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 731e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 732e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block svnConvertedText => toWindowsLineEndings(<<'END', # Same as input text 733e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: test_file.swf 734e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 735e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockCannot display: file marked as a binary type. 736e8b154fd68f9b33be40a3590e58347f353835f5cSteve Blocksvn:mime-type = application/octet-stream 737e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 738e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 739e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 740e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockQ1dTBx0AAAB42itg4GlgYJjGwMDDyODMxMDw34GBgQEAJPQDJA== 741e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 742e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 743e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 744e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "test_file.swf", 745e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isBinary => 1, 746e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 747e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 748e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block"Index: Makefile\r\n"], 749e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => "===================================================================\r\n", 750e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 751e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke#### 752e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke# Property Changes: File change with property change 753e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke## 754e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 755e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 756e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: file change diff with property change, followed by property change diff", 757e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 758e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 759e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 760e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 761e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 762e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 763e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 764e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 765e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 766e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 767e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 768e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile 769e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 770e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeAdded: svn:executable 771e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke + * 772e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 773e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 774e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile.shared 775e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 776e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeDeleted: svn:executable 777e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke - * 778e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 779e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 780e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 781e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 782e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 783e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 784e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 785e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 786e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 787e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 788e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 789e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 790e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 791e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 792e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 793e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 794e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 795e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => 1, 796e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "Makefile", 797e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 798e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke sourceRevision => "60021", 799e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 800e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Property changes on: Makefile.shared\n"], 801e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "___________________________________________________________________\n", 802e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 803e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke{ 804e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke # New test 805e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: file change diff with property change, followed by property change diff using Windows line endings", 806e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 807e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile 808e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 809e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile (revision 60021) 810e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile (working copy) 811e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 812e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 813e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 814e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 815e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block all: 816e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 817e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile 818e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 819e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockAdded: svn:executable 820e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block + * 821e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 822e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 823e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile.shared 824e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 825e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockDeleted: svn:executable 826e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block - * 827e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 828e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 829e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 830e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 831e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block svnConvertedText => toWindowsLineEndings(<<'END', # Same as input text 832e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile 833e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 834e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile (revision 60021) 835e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile (working copy) 836e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 837e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 838e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 839e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 840e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block all: 841e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 842e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 843e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 844e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 845e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 846e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block executableBitDelta => 1, 847e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "Makefile", 848e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 849e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block sourceRevision => "60021", 850e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 851e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block"Property changes on: Makefile.shared\r\n"], 852e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => "___________________________________________________________________\r\n", 853e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 854e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 855e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 856e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke diffName => "SVN: file change diff with property change, followed by file change diff", 857e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke inputText => <<'END', 858e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 859e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 860e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 861e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 862e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 863e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 864e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 865e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 866e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 867e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 868e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeProperty changes on: Makefile 869e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke___________________________________________________________________ 870e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeName: svn:executable 871e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke - * 872e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 873e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile.shared 874e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 875e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile.shared (revision 60021) 876e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile.shared (working copy) 877e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 878e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 879e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeSCRIPTS_PATH ?= ../WebKitTools/Scripts 880e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeXCODE_OPTIONS = `perl -I$(SCRIPTS_PATH) -Mwebkitdirs -e 'print XcodeOptionString()'` $(ARGS) 881e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 882e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedReturn => [ 883e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke[{ 884e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke svnConvertedText => <<'END', # Same as input text 885e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeIndex: Makefile 886e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke=================================================================== 887e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke--- Makefile (revision 60021) 888e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+++ Makefile (working copy) 889e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke@@ -1,3 +1,4 @@ 890e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke+ 891e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 892e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 893e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke all: 894e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 895e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke 896e458d70a0d18538346f41b503114c9ebe6b2ce12Leon ClarkeEND 897e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => -1, 898e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke indexPath => "Makefile", 899e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke isSvn => 1, 900e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke sourceRevision => "60021", 901e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}], 902e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke"Index: Makefile.shared\n"], 903e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke expectedNextLine => "===================================================================\n", 904e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke}, 905e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block{ 906e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block # New test 907e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block diffName => "SVN: file change diff with property change, followed by file change diff using Windows line endings", 908e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block inputText => toWindowsLineEndings(<<'END', 909e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile 910e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 911e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile (revision 60021) 912e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile (working copy) 913e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 914e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 915e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 916e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 917e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block all: 918e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 919e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockProperty changes on: Makefile 920e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block___________________________________________________________________ 921e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockName: svn:executable 922e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block - * 923e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 924e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile.shared 925e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 926e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile.shared (revision 60021) 927e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile.shared (working copy) 928e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 929e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 930e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockSCRIPTS_PATH ?= ../WebKitTools/Scripts 931e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockXCODE_OPTIONS = `perl -I$(SCRIPTS_PATH) -Mwebkitdirs -e 'print XcodeOptionString()'` $(ARGS) 932e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 933e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 934e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedReturn => [ 935e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block[{ 936e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block svnConvertedText => toWindowsLineEndings(<<'END', # Same as input text 937e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockIndex: Makefile 938e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block=================================================================== 939e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block--- Makefile (revision 60021) 940e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+++ Makefile (working copy) 941e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block@@ -1,3 +1,4 @@ 942e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block+ 943e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools 944e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 945e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block all: 946e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 947e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block 948e8b154fd68f9b33be40a3590e58347f353835f5cSteve BlockEND 949e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block), 950e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block executableBitDelta => -1, 951e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block indexPath => "Makefile", 952e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block isSvn => 1, 953e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block sourceRevision => "60021", 954e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}], 955e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block"Index: Makefile.shared\r\n"], 956e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block expectedNextLine => "===================================================================\r\n", 957e8b154fd68f9b33be40a3590e58347f353835f5cSteve Block}, 958e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke#### 95921939df44de1705786c545cd1bf519d47250322dBen Murdoch# Git test cases 96021939df44de1705786c545cd1bf519d47250322dBen Murdoch## 961d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 962d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 963d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "Git: simple", 964d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 965d0825bca7fe65beaee391d30da42e937db621564Steve Blockdiff --git a/Makefile b/Makefile 966d0825bca7fe65beaee391d30da42e937db621564Steve Blockindex f5d5e74..3b6aa92 100644 967d0825bca7fe65beaee391d30da42e937db621564Steve Block--- a/Makefile 968d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ b/Makefile 969d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 1,1 @@ public: 970d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 97121939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 9726c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 973d0825bca7fe65beaee391d30da42e937db621564Steve Block svnConvertedText => <<'END', 974d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 97521939df44de1705786c545cd1bf519d47250322dBen Murdochindex f5d5e74..3b6aa92 100644 976d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile 977d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile 978d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 1,1 @@ public: 979d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 980d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile", 98121939df44de1705786c545cd1bf519d47250322dBen Murdoch isGit => 1, 9826c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 98321939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 98421939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 985d0825bca7fe65beaee391d30da42e937db621564Steve Block}, 9866c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ # New test 9876c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen diffName => "Git: new file", 9886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen inputText => <<'END', 9896c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/foo.h b/foo.h 9906c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsennew file mode 100644 9916c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex 0000000..3c9f114 9926c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen--- /dev/null 9936c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+++ b/foo.h 9946c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen@@ -0,0 +1,34 @@ 9956c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+<html> 9966c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/bar b/bar 9976c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex d45dd40..3494526 100644 9986c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 9996c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedReturn => [ 10006c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 10016c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen svnConvertedText => <<'END', 10026c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenIndex: foo.h 10036c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsennew file mode 100644 10046c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex 0000000..3c9f114 10056c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen--- foo.h 10066c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+++ foo.h 10076c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen@@ -0,0 +1,34 @@ 10086c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+<html> 10096c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 10106c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo.h", 10116c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isGit => 1, 10126c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isNew => 1, 10136c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 10146c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen"diff --git a/bar b/bar\n"], 10156c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedNextLine => "index d45dd40..3494526 100644\n", 10166c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 10176c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ # New test 10186c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen diffName => "Git: file deletion", 10196c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen inputText => <<'END', 10206c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/foo b/foo 10216c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendeleted file mode 100644 10226c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex 1e50d1d..0000000 10236c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen--- a/foo 10246c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+++ /dev/null 10256c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen@@ -1,1 +0,0 @@ 10266c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen-line1 10276c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/bar b/bar 10286c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex d45dd40..3494526 100644 10296c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 10306c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedReturn => [ 10316c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 10326c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen svnConvertedText => <<'END', 10336c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenIndex: foo 10346c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendeleted file mode 100644 10356c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex 1e50d1d..0000000 10366c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen--- foo 10376c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+++ foo 10386c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen@@ -1,1 +0,0 @@ 10396c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen-line1 10406c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 10416c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo", 10426c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isDeletion => 1, 10436c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isGit => 1, 10446c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 10456c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen"diff --git a/bar b/bar\n"], 10466c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedNextLine => "index d45dd40..3494526 100644\n", 10476c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 1048d0825bca7fe65beaee391d30da42e937db621564Steve Block{ 1049d0825bca7fe65beaee391d30da42e937db621564Steve Block # New test 1050d0825bca7fe65beaee391d30da42e937db621564Steve Block diffName => "Git: Git diff followed by SVN diff", # Should not recognize SVN start 1051d0825bca7fe65beaee391d30da42e937db621564Steve Block inputText => <<'END', 1052d0825bca7fe65beaee391d30da42e937db621564Steve Blockdiff --git a/Makefile b/Makefile 1053d0825bca7fe65beaee391d30da42e937db621564Steve Blockindex f5d5e74..3b6aa92 100644 1054d0825bca7fe65beaee391d30da42e937db621564Steve Block--- a/Makefile 1055d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ b/Makefile 1056d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 1,1 @@ public: 1057d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile_new 1058d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 1059d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile_new (revision 53131) (from Makefile:53131) 1060d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 106121939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedReturn => [ 10626c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 1063d0825bca7fe65beaee391d30da42e937db621564Steve Block svnConvertedText => <<'END', 1064d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile 106521939df44de1705786c545cd1bf519d47250322dBen Murdochindex f5d5e74..3b6aa92 100644 1066d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile 1067d0825bca7fe65beaee391d30da42e937db621564Steve Block+++ Makefile 1068d0825bca7fe65beaee391d30da42e937db621564Steve Block@@ -1,1 1,1 @@ public: 1069d0825bca7fe65beaee391d30da42e937db621564Steve BlockIndex: Makefile_new 1070d0825bca7fe65beaee391d30da42e937db621564Steve Block=================================================================== 1071d0825bca7fe65beaee391d30da42e937db621564Steve Block--- Makefile_new (revision 53131) (from Makefile:53131) 1072d0825bca7fe65beaee391d30da42e937db621564Steve BlockEND 1073d0825bca7fe65beaee391d30da42e937db621564Steve Block indexPath => "Makefile", 107421939df44de1705786c545cd1bf519d47250322dBen Murdoch isGit => 1, 10756c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 107621939df44de1705786c545cd1bf519d47250322dBen Murdochundef], 107721939df44de1705786c545cd1bf519d47250322dBen Murdoch expectedNextLine => undef, 1078d0825bca7fe65beaee391d30da42e937db621564Steve Block}, 10796c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#### 10806c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen# Git test cases: file moves (multiple return values) 10816c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen## 10826c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 10836c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen diffName => "Git: rename (with similarity index 100%)", 10846c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen inputText => <<'END', 10856c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/foo b/foo_new 10866c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsensimilarity index 100% 10876c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename from foo 10886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename to foo_new 10896c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/bar b/bar 10906c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex d45dd40..3494526 100644 10916c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 10926c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedReturn => [ 10936c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 10946c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo", 10956c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isDeletion => 1, 10966c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 10976c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 10986c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen copiedFromPath => "foo", 10996c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo_new", 11006c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 11016c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen"diff --git a/bar b/bar\n"], 11026c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedNextLine => "index d45dd40..3494526 100644\n", 11036c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 11046c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 11056c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen diffName => "rename (with similarity index < 100%)", 11066c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen inputText => <<'END', 11076c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/foo b/foo_new 11086c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsensimilarity index 99% 11096c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename from foo 11106c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename to foo_new 11116c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex 1e50d1d..1459d21 100644 11126c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen--- a/foo 11136c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+++ b/foo_new 11146c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen@@ -15,3 +15,4 @@ release r deployment dep deploy: 11156c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen line1 11166c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen line2 11176c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen line3 11186c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+line4 11196c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/bar b/bar 11206c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex d45dd40..3494526 100644 11216c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 11226c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedReturn => [ 11236c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 11246c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo", 11256c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isDeletion => 1, 11266c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 11276c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 11286c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen copiedFromPath => "foo", 11296c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo_new", 11306c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 11316c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 11326c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo_new", 11336c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isGit => 1, 11346c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen svnConvertedText => <<'END', 11356c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenIndex: foo_new 11366c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsensimilarity index 99% 11376c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename from foo 11386c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename to foo_new 11396c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex 1e50d1d..1459d21 100644 11406c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen--- foo_new 11416c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+++ foo_new 11426c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen@@ -15,3 +15,4 @@ release r deployment dep deploy: 11436c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen line1 11446c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen line2 11456c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen line3 11466c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen+line4 11476c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 11486c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 11496c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen"diff --git a/bar b/bar\n"], 11506c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedNextLine => "index d45dd40..3494526 100644\n", 11516c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 11526c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 11536c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen diffName => "rename (with executable bit change)", 11546c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen inputText => <<'END', 11556c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/foo b/foo_new 11566c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenold mode 100644 11576c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsennew mode 100755 11586c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsensimilarity index 100% 11596c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename from foo 11606c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename to foo_new 11616c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsendiff --git a/bar b/bar 11626c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenindex d45dd40..3494526 100644 11636c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 11646c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedReturn => [ 11656c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen[{ 11666c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo", 11676c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isDeletion => 1, 11686c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 11696c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 11706c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen copiedFromPath => "foo", 11716c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo_new", 11726c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 11736c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen{ 1174e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke executableBitDelta => 1, 11756c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen indexPath => "foo_new", 11766c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen isGit => 1, 11776c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen svnConvertedText => <<'END', 11786c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenIndex: foo_new 11796c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenold mode 100644 11806c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsennew mode 100755 11816c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsensimilarity index 100% 11826c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename from foo 11836c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenrename to foo_new 11846c2af9490927c3c5959b5cb07461b646f8b32f6cKristian MonsenEND 11856c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}], 11866c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen"diff --git a/bar b/bar\n"], 11876c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen expectedNextLine => "index d45dd40..3494526 100644\n", 11886c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen}, 1189d0825bca7fe65beaee391d30da42e937db621564Steve Block); 1190d0825bca7fe65beaee391d30da42e937db621564Steve Block 119121939df44de1705786c545cd1bf519d47250322dBen Murdochmy $testCasesCount = @testCaseHashRefs; 119221939df44de1705786c545cd1bf519d47250322dBen Murdochplan(tests => 2 * $testCasesCount); # Total number of assertions. 1193d0825bca7fe65beaee391d30da42e937db621564Steve Block 119421939df44de1705786c545cd1bf519d47250322dBen Murdochforeach my $testCase (@testCaseHashRefs) { 119521939df44de1705786c545cd1bf519d47250322dBen Murdoch my $testNameStart = "parseDiff(): $testCase->{diffName}: comparing"; 1196d0825bca7fe65beaee391d30da42e937db621564Steve Block 119721939df44de1705786c545cd1bf519d47250322dBen Murdoch my $fileHandle; 119821939df44de1705786c545cd1bf519d47250322dBen Murdoch open($fileHandle, "<", \$testCase->{inputText}); 1199d0825bca7fe65beaee391d30da42e937db621564Steve Block my $line = <$fileHandle>; 1200d0825bca7fe65beaee391d30da42e937db621564Steve Block 12012daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch my @got = VCSUtils::parseDiff($fileHandle, $line, {"shouldNotUseIndexPathEOL" => 1}); 120221939df44de1705786c545cd1bf519d47250322dBen Murdoch my $expectedReturn = $testCase->{expectedReturn}; 1203d0825bca7fe65beaee391d30da42e937db621564Steve Block 120421939df44de1705786c545cd1bf519d47250322dBen Murdoch is_deeply(\@got, $expectedReturn, "$testNameStart return value."); 1205d0825bca7fe65beaee391d30da42e937db621564Steve Block 120621939df44de1705786c545cd1bf519d47250322dBen Murdoch my $gotNextLine = <$fileHandle>; 120721939df44de1705786c545cd1bf519d47250322dBen Murdoch is($gotNextLine, $testCase->{expectedNextLine}, "$testNameStart next read line."); 1208d0825bca7fe65beaee391d30da42e937db621564Steve Block} 1209