@@ -311,11 +311,19 @@ void testCommitListingWithSingleCommit(VCS vcs) throws IOException {
311
311
assertEquals (new Range (0 , 0 ), hunk .source ().range ());
312
312
assertEquals (new Range (1 , 1 ), hunk .target ().range ());
313
313
314
- assertEquals (List .of (), hunk .source ().lines ());
315
- assertEquals (List .of ("Hello, readme!" ), hunk .target ().lines ());
314
+ assertLinesEquals (List .of (), hunk .source ().lines ());
315
+ assertLinesEquals (List .of ("Hello, readme!" ), hunk .target ().lines ());
316
316
}
317
317
}
318
318
319
+ static void assertLinesEquals (List <String > expected , List <String > actual ) {
320
+ var newLine = System .lineSeparator ();
321
+ var suffix = newLine .endsWith ("\n " )
322
+ ? newLine .substring (0 , newLine .length () - 1 ) // drop trailing '\n' (keeping any '\r')
323
+ : newLine ;
324
+ assertEquals (expected .stream ().map (l -> l + suffix ).collect (Collectors .toList ()), actual );
325
+ }
326
+
319
327
@ ParameterizedTest
320
328
@ EnumSource (VCS .class )
321
329
void testCommitListingWithMultipleCommits (VCS vcs ) throws IOException {
@@ -379,8 +387,8 @@ void testCommitListingWithMultipleCommits(VCS vcs) throws IOException {
379
387
assertEquals (new Range (2 , 0 ), hunk .source ().range ());
380
388
assertEquals (new Range (2 , 1 ), hunk .target ().range ());
381
389
382
- assertEquals (List .of (), hunk .source ().lines ());
383
- assertEquals (List .of ("Another line" ), hunk .target ().lines ());
390
+ assertLinesEquals (List .of (), hunk .source ().lines ());
391
+ assertLinesEquals (List .of ("Another line" ), hunk .target ().lines ());
384
392
}
385
393
}
386
394
@@ -511,8 +519,8 @@ void testSquash(VCS vcs) throws IOException {
511
519
assertEquals (new Range (2 , 0 ), hunk .source ().range ());
512
520
assertEquals (new Range (2 , 2 ), hunk .target ().range ());
513
521
514
- assertEquals (List .of (), hunk .source ().lines ());
515
- assertEquals (List .of ("Another line" , "A final line" ), hunk .target ().lines ());
522
+ assertLinesEquals (List .of (), hunk .source ().lines ());
523
+ assertLinesEquals (List .of ("Another line" , "A final line" ), hunk .target ().lines ());
516
524
}
517
525
}
518
526
@@ -609,7 +617,7 @@ void testRebase(VCS vcs) throws IOException {
609
617
var hunks = patch .hunks ();
610
618
assertEquals (1 , hunks .size ());
611
619
var hunk = hunks .get (0 );
612
- assertEquals (List .of ("Keep the patches coming" ), hunk .target ().lines ());
620
+ assertLinesEquals (List .of ("Keep the patches coming" ), hunk .target ().lines ());
613
621
}
614
622
}
615
623
@@ -887,7 +895,7 @@ void testDiffBetweenCommits(VCS vcs) throws IOException {
887
895
888
896
assertEquals (2 , hunk .target ().range ().start ());
889
897
assertEquals (1 , hunk .target ().range ().count ());
890
- assertEquals (List .of ("One more line" ), hunk .target ().lines ());
898
+ assertLinesEquals (List .of ("One more line" ), hunk .target ().lines ());
891
899
892
900
assertEquals (1 , hunk .added ());
893
901
assertEquals (0 , hunk .removed ());
@@ -937,11 +945,11 @@ void testDiffBetweenCommitsWithMultiplePatches(VCS vcs) throws IOException {
937
945
var hunk1 = hunks1 .get (0 );
938
946
assertEquals (1 , hunk1 .source ().range ().start ());
939
947
assertEquals (1 , hunk1 .source ().range ().count ());
940
- assertEquals (List .of ("make" ), hunk1 .source ().lines ());
948
+ assertLinesEquals (List .of ("make" ), hunk1 .source ().lines ());
941
949
942
950
assertEquals (1 , hunk1 .target ().range ().start ());
943
951
assertEquals (1 , hunk1 .target ().range ().count ());
944
- assertEquals (List .of ("make images" ), hunk1 .target ().lines ());
952
+ assertLinesEquals (List .of ("make images" ), hunk1 .target ().lines ());
945
953
946
954
var patch2 = patches .get (1 ).asTextualPatch ();
947
955
assertEquals (Path .of ("README" ), patch2 .source ().path ().get ());
@@ -956,11 +964,11 @@ void testDiffBetweenCommitsWithMultiplePatches(VCS vcs) throws IOException {
956
964
var hunk2 = hunks2 .get (0 );
957
965
assertEquals (1 , hunk2 .source ().range ().start ());
958
966
assertEquals (1 , hunk2 .source ().range ().count ());
959
- assertEquals (List .of ("Hello, readme!" ), hunk2 .source ().lines ());
967
+ assertLinesEquals (List .of ("Hello, readme!" ), hunk2 .source ().lines ());
960
968
961
969
assertEquals (1 , hunk2 .target ().range ().start ());
962
970
assertEquals (1 , hunk2 .target ().range ().count ());
963
- assertEquals (List .of ("Hello, Skara!" ), hunk2 .target ().lines ());
971
+ assertLinesEquals (List .of ("Hello, Skara!" ), hunk2 .target ().lines ());
964
972
}
965
973
}
966
974
@@ -1000,11 +1008,11 @@ void testDiffBetweenCommitsWithMultipleHunks(VCS vcs) throws IOException {
1000
1008
var hunk1 = hunks .get (0 );
1001
1009
assertEquals (1 , hunk1 .source ().range ().start ());
1002
1010
assertEquals (1 , hunk1 .source ().range ().count ());
1003
- assertEquals (List .of ("A" ), hunk1 .source ().lines ());
1011
+ assertLinesEquals (List .of ("A" ), hunk1 .source ().lines ());
1004
1012
1005
1013
assertEquals (1 , hunk1 .target ().range ().start ());
1006
1014
assertEquals (2 , hunk1 .target ().range ().count ());
1007
- assertEquals (List .of ("1" , "2" ), hunk1 .target ().lines ());
1015
+ assertLinesEquals (List .of ("1" , "2" ), hunk1 .target ().lines ());
1008
1016
1009
1017
assertEquals (1 , hunk1 .added ());
1010
1018
assertEquals (0 , hunk1 .removed ());
@@ -1013,11 +1021,11 @@ void testDiffBetweenCommitsWithMultipleHunks(VCS vcs) throws IOException {
1013
1021
var hunk2 = hunks .get (1 );
1014
1022
assertEquals (3 , hunk2 .source ().range ().start ());
1015
1023
assertEquals (1 , hunk2 .source ().range ().count ());
1016
- assertEquals (List .of ("C" ), hunk2 .source ().lines ());
1024
+ assertLinesEquals (List .of ("C" ), hunk2 .source ().lines ());
1017
1025
1018
1026
assertEquals (4 , hunk2 .target ().range ().start ());
1019
1027
assertEquals (1 , hunk2 .target ().range ().count ());
1020
- assertEquals (List .of ("3" ), hunk2 .target ().lines ());
1028
+ assertLinesEquals (List .of ("3" ), hunk2 .target ().lines ());
1021
1029
1022
1030
assertEquals (0 , hunk2 .added ());
1023
1031
assertEquals (0 , hunk2 .removed ());
@@ -1061,11 +1069,11 @@ void testDiffWithRemoval(VCS vcs) throws IOException {
1061
1069
var hunk = hunks .get (0 );
1062
1070
assertEquals (1 , hunk .source ().range ().start ());
1063
1071
assertEquals (1 , hunk .source ().range ().count ());
1064
- assertEquals (List .of ("Hello, world!" ), hunk .source ().lines ());
1072
+ assertLinesEquals (List .of ("Hello, world!" ), hunk .source ().lines ());
1065
1073
1066
1074
assertEquals (0 , hunk .target ().range ().start ());
1067
1075
assertEquals (0 , hunk .target ().range ().count ());
1068
- assertEquals (List .of (), hunk .target ().lines ());
1076
+ assertLinesEquals (List .of (), hunk .target ().lines ());
1069
1077
1070
1078
assertEquals (0 , hunk .added ());
1071
1079
assertEquals (1 , hunk .removed ());
@@ -1110,11 +1118,11 @@ void testDiffWithAddition(VCS vcs) throws IOException {
1110
1118
var hunk = hunks .get (0 );
1111
1119
assertEquals (0 , hunk .source ().range ().start ());
1112
1120
assertEquals (0 , hunk .source ().range ().count ());
1113
- assertEquals (List .of (), hunk .source ().lines ());
1121
+ assertLinesEquals (List .of (), hunk .source ().lines ());
1114
1122
1115
1123
assertEquals (1 , hunk .target ().range ().start ());
1116
1124
assertEquals (1 , hunk .target ().range ().count ());
1117
- assertEquals (List .of ("make" ), hunk .target ().lines ());
1125
+ assertLinesEquals (List .of ("make" ), hunk .target ().lines ());
1118
1126
1119
1127
assertEquals (1 , hunk .added ());
1120
1128
assertEquals (0 , hunk .removed ());
@@ -1156,11 +1164,11 @@ void testDiffWithWorkingDir(VCS vcs) throws IOException {
1156
1164
var hunk = hunks .get (0 );
1157
1165
assertEquals (2 , hunk .source ().range ().start ());
1158
1166
assertEquals (0 , hunk .source ().range ().count ());
1159
- assertEquals (List .of (), hunk .source ().lines ());
1167
+ assertLinesEquals (List .of (), hunk .source ().lines ());
1160
1168
1161
1169
assertEquals (2 , hunk .target ().range ().start ());
1162
1170
assertEquals (1 , hunk .target ().range ().count ());
1163
- assertEquals (List .of ("One more line" ), hunk .target ().lines ());
1171
+ assertLinesEquals (List .of ("One more line" ), hunk .target ().lines ());
1164
1172
1165
1173
assertEquals (1 , hunk .added ());
1166
1174
assertEquals (0 , hunk .removed ());
@@ -1302,8 +1310,8 @@ void testMergeWithEdit(VCS vcs) throws IOException {
1302
1310
assertEquals (1 , secondPatch .hunks ().size ());
1303
1311
1304
1312
var secondHunk = secondPatch .hunks ().get (0 );
1305
- assertEquals (List .of (), secondHunk .source ().lines ());
1306
- assertEquals (List .of ("One last line" ), secondHunk .target ().lines ());
1313
+ assertLinesEquals (List .of (), secondHunk .source ().lines ());
1314
+ assertLinesEquals (List .of ("One last line" ), secondHunk .target ().lines ());
1307
1315
1308
1316
assertEquals (3 , secondHunk .source ().range ().start ());
1309
1317
assertEquals (0 , secondHunk .source ().range ().count ());
@@ -1321,8 +1329,8 @@ void testMergeWithEdit(VCS vcs) throws IOException {
1321
1329
assertEquals (1 , thirdPatch .hunks ().size ());
1322
1330
1323
1331
var thirdHunk = thirdPatch .hunks ().get (0 );
1324
- assertEquals (List .of (), thirdHunk .source ().lines ());
1325
- assertEquals (List .of ("One more line" , "One last line" ), thirdHunk .target ().lines ());
1332
+ assertLinesEquals (List .of (), thirdHunk .source ().lines ());
1333
+ assertLinesEquals (List .of ("One more line" , "One last line" ), thirdHunk .target ().lines ());
1326
1334
1327
1335
assertEquals (2 , thirdHunk .source ().range ().start ());
1328
1336
assertEquals (0 , thirdHunk .source ().range ().count ());
0 commit comments