Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitdac751b

Browse files
committed
fixes#98 - deleted file mode
1 parentf76abb5 commitdac751b

File tree

4 files changed

+88
-1
lines changed

4 files changed

+88
-1
lines changed

‎java-diff-utils/src/main/java/com/github/difflib/unifieddiff/UnifiedDiffFile.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ public final class UnifiedDiffFile {
3030
privateStringtoTimestamp;
3131
privateStringindex;
3232
privateStringnewFileMode;
33+
privateStringdeletedFileMode;
3334
privatePatch<String>patch =newPatch<>();
3435

3536
publicStringgetDiffCommand() {
@@ -101,4 +102,12 @@ public void setNewFileMode(String newFileMode) {
101102
publicStringgetNewFileMode() {
102103
returnnewFileMode;
103104
}
105+
106+
publicStringgetDeletedFileMode() {
107+
returndeletedFileMode;
108+
}
109+
110+
publicvoidsetDeletedFileMode(StringdeletedFileMode) {
111+
this.deletedFileMode =deletedFileMode;
112+
}
104113
}

‎java-diff-utils/src/main/java/com/github/difflib/unifieddiff/UnifiedDiffReader.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ public final class UnifiedDiffReader {
5050
privatefinalUnifiedDiffLineTO_FILE =newUnifiedDiffLine(true,"^\\+\\+\\+\\s",this::processToFile);
5151

5252
privatefinalUnifiedDiffLineNEW_FILE_MODE =newUnifiedDiffLine(true,"^new\\sfile\\smode\\s(\\d+)",this::processNewFileMode);
53+
54+
privatefinalUnifiedDiffLineDELETED_FILE_MODE =newUnifiedDiffLine(true,"^deleted\\sfile\\smode\\s(\\d+)",this::processDeletedFileMode);
5355

5456
privatefinalUnifiedDiffLineCHUNK =newUnifiedDiffLine(false,UNIFIED_DIFF_CHUNK_REGEXP,this::processChunk);
5557
privatefinalUnifiedDiffLineLINE_NORMAL =newUnifiedDiffLine("^\\s",this::processNormalLine);
@@ -89,7 +91,7 @@ private UnifiedDiff parse() throws IOException, UnifiedDiffParserException {
8991
if (!CHUNK.validLine(line)) {
9092
initFileIfNecessary();
9193
while (line !=null && !CHUNK.validLine(line)) {
92-
if (processLine(line,DIFF_COMMAND,INDEX,FROM_FILE,TO_FILE,NEW_FILE_MODE) ==false) {
94+
if (processLine(line,DIFF_COMMAND,INDEX,FROM_FILE,TO_FILE,NEW_FILE_MODE,DELETED_FILE_MODE) ==false) {
9395
thrownewUnifiedDiffParserException("expected file start line not found");
9496
}
9597
line =READER.readLine();
@@ -254,6 +256,11 @@ private void processNewFileMode(MatchResult match, String line) {
254256
//initFileIfNecessary();
255257
actualFile.setNewFileMode(match.group(1));
256258
}
259+
260+
privatevoidprocessDeletedFileMode(MatchResultmatch,Stringline) {
261+
//initFileIfNecessary();
262+
actualFile.setDeletedFileMode(match.group(1));
263+
}
257264

258265
privateStringextractFileName(String_line) {
259266
Matchermatcher =TIMESTAMP_REGEXP.matcher(_line);

‎java-diff-utils/src/test/java/com/github/difflib/unifieddiff/UnifiedDiffReaderTest.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,4 +220,20 @@ public void testParseIssue85() throws IOException {
220220
publicvoidtestTimeStampRegexp() {
221221
assertThat("2019-04-18 13:49:39.516149751 +0200").matches(UnifiedDiffReader.TIMESTAMP_REGEXP);
222222
}
223+
224+
@Test
225+
publicvoidtestParseIssue98()throwsIOException {
226+
UnifiedDiffdiff =UnifiedDiffReader.parseUnifiedDiff(
227+
UnifiedDiffReaderTest.class.getResourceAsStream("problem_diff_issue98.diff"));
228+
229+
assertThat(diff.getFiles().size()).isEqualTo(1);
230+
231+
assertEquals(1,diff.getFiles().size());
232+
233+
finalUnifiedDiffFilefile1 =diff.getFiles().get(0);
234+
assertEquals("100644",
235+
file1.getDeletedFileMode());
236+
assertEquals("src/test/java/se/bjurr/violations/lib/model/ViolationTest.java",file1.getFromFile());
237+
assertThat(diff.getTail()).isEqualTo("2.25.1");
238+
}
223239
}
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
From fd940c6f66126734e82c00889e7c987e11deea91 Mon Sep 17 00:00:00 2001
2+
From: Tomas Bjerre <tomas.bjerre85@gmail.com>
3+
Date: Sun, 6 Sep 2020 11:20:34 +0200
4+
Subject: [PATCH] removing file
5+
6+
---
7+
.../violations/lib/model/ViolationTest.java | 37 -------------------
8+
1 file changed, 37 deletions(-)
9+
delete mode 100644 src/test/java/se/bjurr/violations/lib/model/ViolationTest.java
10+
11+
diff --git a/src/test/java/se/bjurr/violations/lib/model/ViolationTest.java b/src/test/java/se/bjurr/violations/lib/model/ViolationTest.java
12+
deleted file mode 100644
13+
index 3e40b52..0000000
14+
--- a/src/test/java/se/bjurr/violations/lib/model/ViolationTest.java
15+
+++ /dev/null
16+
@@ -1,37 +0,0 @@
17+
-package se.bjurr.violations.lib.model;
18+
-
19+
-import static org.assertj.core.api.Assertions.assertThat;
20+
-import static se.bjurr.violations.lib.model.SEVERITY.ERROR;
21+
-import static se.bjurr.violations.lib.model.Violation.violationBuilder;
22+
-import static se.bjurr.violations.lib.reports.Parser.CHECKSTYLE;
23+
-
24+
-import org.junit.Test;
25+
-import se.bjurr.violations.lib.model.Violation.ViolationBuilder;
26+
-import uk.co.jemos.podam.api.PodamFactoryImpl;
27+
-
28+
-public class ViolationTest {
29+
-
30+
- @Test
31+
- public void testThatFilePathsAreAlwaysFronSlashes() {
32+
- final Violation violation =
33+
- violationBuilder() //
34+
- .setParser(CHECKSTYLE) //
35+
- .setFile("c:\\path\\to\\file.xml") //
36+
- .setMessage("message") //
37+
- .setSeverity(ERROR) //
38+
- .setStartLine(1) //
39+
- .build();
40+
- assertThat(violation.getFile()) //
41+
- .isEqualTo("c:/path/to/file.xml");
42+
- }
43+
-
44+
- @Test
45+
- public void testThatCopyConstructorWorks() {
46+
- final ViolationBuilder originalBuilder =
47+
- new PodamFactoryImpl().manufacturePojo(ViolationBuilder.class);
48+
- final Violation original = originalBuilder.build();
49+
- final Violation copied = new Violation(original);
50+
- assertThat(copied) //
51+
- .isEqualTo(original);
52+
- }
53+
-}
54+
--
55+
2.25.1

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp