Skip to content

Commit

Permalink
🪲 When creation time and last modified have changed the same only dis…
Browse files Browse the repository at this point in the history
…play last modified
  • Loading branch information
evrignaud committed Sep 30, 2016
1 parent 0be6d7c commit 2da0d35
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 56 deletions.
60 changes: 15 additions & 45 deletions src/main/asciidoc/simple-example.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -165,15 +165,9 @@ Copied: file11 (was file05)
Duplicated: file03.dup1 = file03
Duplicated: file03.dup2 = file03
Duplicated: file07.dup1 = file07
Date modified: file02 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Date modified: file02 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Renamed: file01 -> dir01/file01
Deleted: file06
Expand Down Expand Up @@ -304,15 +298,9 @@ Copied: file11 (was file05)
Duplicated: file03.dup1 = file03
Duplicated: file03.dup2 = file03
Duplicated: file07.dup1 = file07
Date modified: file02 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Date modified: file02 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Deleted: file01
Deleted: file06
Expand Down Expand Up @@ -381,15 +369,9 @@ Copied: file11 (was file05)
Duplicated: file03.dup1 = file03
Duplicated: file03.dup2 = file03
Duplicated: file07.dup1 = file07
Date modified: file02 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Date modified: file02 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Deleted: file01
Deleted: file06
Expand Down Expand Up @@ -440,15 +422,9 @@ Copied: file11 (was file05)
Duplicated: file03.dup1 = file03
Duplicated: file03.dup2 = file03
Duplicated: file07.dup1 = file07
Date modified: file02 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Date modified: file02 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Renamed: file01 -> dir01/file01
Deleted: file06
Expand Down Expand Up @@ -506,15 +482,9 @@ Copied: file11 (was file05)
Duplicated: file03.dup1 = file03
Duplicated: file03.dup2 = file03
Duplicated: file07.dup1 = file07
Date modified: file02 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 creationTime: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
lastModified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Date modified: file02 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file04 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Content modified: file05 last modified: 2016/05/09 21:58:33 -> 2016/05/09 21:58:36
Renamed: file01 -> dir01/file01
Deleted: file06
Expand Down
41 changes: 31 additions & 10 deletions src/main/java/org/fim/model/CompareResult.java
Original file line number Diff line number Diff line change
Expand Up @@ -218,16 +218,8 @@ private static String internalFormatModifiedAttributes(Difference diff, boolean
}
}

if (displayTimeChange && diff.isCreationTimeChanged()) {
modifCount++;
addSeparator(diff, modification);
modification.append("creationTime: ").append(formatCreationTime(diff.getPreviousFileState())).append(" -> ").append(formatCreationTime(diff.getFileState()));
}

if (displayTimeChange && diff.isLastModifiedChanged()) {
modifCount++;
addSeparator(diff, modification);
modification.append("lastModified: ").append(formatLastModified(diff.getPreviousFileState())).append(" -> ").append(formatLastModified(diff.getFileState()));
if (displayTimeChange) {
modifCount = +formatTimeChange(diff, modification);
}

if (modifCount > 1) {
Expand All @@ -237,6 +229,35 @@ private static String internalFormatModifiedAttributes(Difference diff, boolean
return modification.toString();
}

private static int formatTimeChange(Difference diff, StringBuilder modification) {
int modifCount = 0;
boolean creationTimeChanged = diff.isCreationTimeChanged();
boolean lastModifiedChanged = diff.isLastModifiedChanged();

FileTime fileTime = diff.getFileState().getFileTime();
FileTime previousFileTime = diff.getPreviousFileState().getFileTime();

if (creationTimeChanged && lastModifiedChanged &&
fileTime.getCreationTime() == fileTime.getLastModified() && previousFileTime.getCreationTime() == previousFileTime.getLastModified()) {
modifCount++;
addSeparator(diff, modification);
modification.append("last modified: ").append(formatLastModified(diff.getPreviousFileState())).append(" -> ").append(formatLastModified(diff.getFileState()));
} else {
if (creationTimeChanged) {
modifCount++;
addSeparator(diff, modification);
modification.append("creation time: ").append(formatCreationTime(diff.getPreviousFileState())).append(" -> ").append(formatCreationTime(diff.getFileState()));
}

if (lastModifiedChanged) {
modifCount++;
addSeparator(diff, modification);
modification.append("last modified: ").append(formatLastModified(diff.getPreviousFileState())).append(" -> ").append(formatLastModified(diff.getFileState()));
}
}
return modifCount;
}

static void addSeparator(Difference diff, StringBuilder modification) {
if (modification.length() == 0) {
return;
Expand Down
2 changes: 1 addition & 1 deletion src/test/java/org/fim/model/CompareResultTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ public void addSeparatorTest() {

@Test
public void formatModifiedAttributesTest() {
String modificationStr = "lastModified: 2015/11/14 13:12:12 -> 2015/11/14 13:12:13";
String modificationStr = "last modified: 2015/11/14 13:12:12 -> 2015/11/14 13:12:13";
assertThat(formatModifiedAttributes(difference, true)).isEqualTo(" \n \t" + modificationStr);

assertThat(formatModifiedAttributes(difference, false)).isEqualTo(modificationStr);
Expand Down

0 comments on commit 2da0d35

Please sign in to comment.