Add missing change types to diff statistics

This commit is contained in:
Viktor Egorov
2024-09-20 10:04:23 +02:00
parent cc898687fe
commit f95579c102
11 changed files with 57 additions and 16 deletions

View File

@@ -196,20 +196,18 @@ public class GitDiffResult implements DiffResult {
int addCounter = 0;
int modifiedCounter = 0;
int deletedCounter = 0;
int renameCounter = 0;
int copyCounter = 0;
for (DiffEntry diffEntry : diffEntries) {
switch (diffEntry.getChangeType()) {
case ADD:
++addCounter;
break;
case MODIFY:
++modifiedCounter;
break;
case DELETE:
++deletedCounter;
break;
case ADD -> ++addCounter;
case MODIFY -> ++modifiedCounter;
case DELETE -> ++deletedCounter;
case RENAME -> ++renameCounter;
case COPY -> ++copyCounter;
}
}
DiffStatistics stats = new DiffStatistics(addCounter, modifiedCounter, deletedCounter);
DiffStatistics stats = new DiffStatistics(addCounter, modifiedCounter, deletedCounter,renameCounter,copyCounter);
return Optional.of(stats);
}

View File

@@ -189,6 +189,8 @@ public class GitDiffResultCommandTest extends AbstractGitCommandTestBase {
assertThat(diffResult.getStatistics()).get().extracting("deleted").isEqualTo(1);
assertThat(diffResult.getStatistics()).get().extracting("modified").isEqualTo(1);
assertThat(diffResult.getStatistics()).get().extracting("added").isEqualTo(0);
assertThat(diffResult.getStatistics()).get().extracting("renamed").isEqualTo(0);
assertThat(diffResult.getStatistics()).get().extracting("copied").isEqualTo(0);
}
@Test