You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2020/08/07 16:41:10 UTC
[commons-io] branch master updated: Don't call
File.setLastModified() directly but go through wrapper method to allow
experimenting with Files.setLastModifiedTime().
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-io.git
The following commit(s) were added to refs/heads/master by this push:
new 8b7c822 Don't call File.setLastModified() directly but go through wrapper method to allow experimenting with Files.setLastModifiedTime().
8b7c822 is described below
commit 8b7c82225ad535bba66b2a4c64c4cdd80018cb36
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Fri Aug 7 12:41:04 2020 -0400
Don't call File.setLastModified() directly but go through wrapper method
to
allow experimenting with Files.setLastModifiedTime().
---
.../org/apache/commons/io/FileUtilsTestCase.java | 23 ++++++++++++++++------
1 file changed, 17 insertions(+), 6 deletions(-)
diff --git a/src/test/java/org/apache/commons/io/FileUtilsTestCase.java b/src/test/java/org/apache/commons/io/FileUtilsTestCase.java
index 9c81611..8ae6ba3 100644
--- a/src/test/java/org/apache/commons/io/FileUtilsTestCase.java
+++ b/src/test/java/org/apache/commons/io/FileUtilsTestCase.java
@@ -40,6 +40,7 @@ import java.net.URL;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
+import java.nio.file.attribute.FileTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -1399,9 +1400,9 @@ public class FileUtilsTestCase {
// Set dates in reverse order to avoid overwriting previous values
// Also, use full seconds (arguments are in ms) close to today
// but still highly unlikely to occur in the real world
- sourceFile.setLastModified(DATE3);
- sourceDirectory.setLastModified(DATE2);
- source.setLastModified(DATE1);
+ setLastModifiedMillis(sourceFile, DATE3);
+ setLastModifiedMillis(sourceDirectory, DATE2);
+ setLastModifiedMillis(source, DATE1);
final File target = new File(temporaryFolder, "target");
final File targetDirectory = new File(target, "directory");
@@ -1438,7 +1439,7 @@ public class FileUtilsTestCase {
FileUtils.deleteDirectory(target);
}
- public long getLastModifiedMillis(final File file) throws IOException {
+ private long getLastModifiedMillis(final File file) throws IOException {
return file.lastModified();
//https://bugs.openjdk.java.net/browse/JDK-8177809
//return Files.getLastModifiedTime(file.toPath()).toMillis();
@@ -1774,7 +1775,7 @@ public class FileUtilsTestCase {
out.close();
assertEquals(1, file.length(), "Wrote one byte to file");
final long y2k = new GregorianCalendar(2000, 0, 1).getTime().getTime();
- final boolean res = file.setLastModified(y2k); // 0L fails on Win98
+ final boolean res = setLastModifiedMillis(file, y2k); // 0L fails on Win98
assertEquals(true, res, "Bad test: set lastModified failed");
assertEquals(y2k, getLastModifiedMillis(file), "Bad test: set lastModified set incorrect value");
final long now = System.currentTimeMillis();
@@ -3096,11 +3097,21 @@ public class FileUtilsTestCase {
private void backDateFile(File testFile) throws IOException {
final long mins10 = 1000 * 60 * 10;
final long lastModified1 = getLastModifiedMillis(testFile);
- testFile.setLastModified(lastModified1 - mins10);
+ setLastModifiedMillis(testFile, lastModified1 - mins10);
// ensure it was changed
assertNotEquals(getLastModifiedMillis(testFile), lastModified1, "Should have changed source date");
}
+ private boolean setLastModifiedMillis(File testFile, final long millis) {
+ return testFile.setLastModified(millis);
+// try {
+// Files.setLastModifiedTime(testFile.toPath(), FileTime.fromMillis(millis));
+// } catch (IOException e) {
+// return false;
+// }
+// return true;
+ }
+
/**
* DirectoryWalker implementation that recursively lists all files and directories.
*/