Skip to content

Commit c1476cb

Browse files
fix: add forgotten increment (#236)
1 parent d07fac4 commit c1476cb

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

src/Gitonomy/Git/Parser/DiffParser.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,10 @@ protected function doParse()
4545
$vars = $this->consumeRegexp("/diff --git \"?(a\/.*?)\"? \"?(b\/.*?)\"?\n/");
4646
$oldName = $vars[1];
4747
$newName = $vars[2];
48+
// Get indexes from raw if it exists
4849
$oldIndex = isset($indexes[$fileIndex]) ? $indexes[$fileIndex][0] : null;
4950
$newIndex = isset($indexes[$fileIndex]) ? $indexes[$fileIndex][1] : null;
51+
$fileIndex++;
5052
$oldMode = null;
5153
$newMode = null;
5254

tests/Gitonomy/Git/Tests/DiffTest.php

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,8 @@ public function testDeleteFileWithoutRaw()
174174

175175
$this->assertTrue($deprecationCalled);
176176
$this->assertFalse($firstFile->isCreation());
177-
// TODO: Enable after #226 is merged
178-
//$this->assertTrue($firstFile->isDeletion());
179-
//$this->assertFalse($firstFile->isChangeMode());
177+
$this->assertTrue($firstFile->isDeletion());
178+
$this->assertFalse($firstFile->isChangeMode());
180179
$this->assertSame('e69de29bb2d1d6434b8b29ae775ad8c2e48c5391', $firstFile->getOldIndex());
181180
$this->assertNull($firstFile->getNewIndex());
182181
}
@@ -216,23 +215,36 @@ public function testModeChangeFileWithRaw()
216215
}, E_USER_DEPRECATED);
217216

218217
$diff = Diff::parse(<<<'DIFF'
219-
:100755 100644 d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa81 d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa81 M a.out
218+
:100644 100755 d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa81 d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa81 M testfile
219+
:100644 100755 d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa82 d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa82 M testfile2
220220
221-
diff --git a/a.out b/a.out
222-
old mode 100755
223-
new mode 100644
221+
diff --git a/testfile b/testfile
222+
old mode 100644
223+
new mode 100755
224+
diff --git a/testfile2 b/testfile2
225+
old mode 100644
226+
new mode 100755
224227

225228
DIFF);
226-
$firstFile = $diff->getFiles()[0];
229+
$files = $diff->getFiles();
230+
$firstFile = $files[0];
231+
$secondFile = $files[1];
227232

228233
restore_exception_handler();
229234

230235
$this->assertFalse($deprecationCalled);
236+
231237
$this->assertFalse($firstFile->isCreation());
232238
$this->assertFalse($firstFile->isDeletion());
233239
$this->assertTrue($firstFile->isChangeMode());
234240
$this->assertSame('d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa81', $firstFile->getOldIndex());
235241
$this->assertSame('d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa81', $firstFile->getNewIndex());
242+
243+
$this->assertFalse($secondFile->isCreation());
244+
$this->assertFalse($secondFile->isDeletion());
245+
$this->assertTrue($secondFile->isChangeMode());
246+
$this->assertSame('d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa82', $secondFile->getOldIndex());
247+
$this->assertSame('d1af4b23d0cc9313e5b2d3ef2fb9696c94afaa82', $secondFile->getNewIndex());
236248
}
237249

238250
public function testThrowErrorOnBlobGetWithoutIndex()

0 commit comments

Comments
 (0)