diff options
author | 2016-09-07 14:33:29 +0000 | |
---|---|---|
committer | 2016-09-08 08:43:41 +0000 | |
commit | e1cd9509862aef684b4dbbdfd15d0b877fb8fad3 (patch) | |
tree | abc9f51fa1ecdb86854b0c39ae56dd6844cc0eb6 /src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java | |
parent | 0d3e8ae7c2bd6937bc0ffd32963d6635bfe825f5 (diff) |
Fixed the issue that hard links are handled improperly when bazel decompresses tarballs.
Issue link: https://github.com/bazelbuild/bazel/issues/574
--
MOS_MIGRATED_REVID=132434278
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java b/src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java index efbd5b0dbf..75bbe93571 100644 --- a/src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java +++ b/src/test/java/com/google/devtools/build/lib/vfs/JavaIoFileSystemTest.java @@ -16,7 +16,10 @@ package com.google.devtools.build.lib.vfs; import static org.junit.Assert.assertEquals; import com.google.devtools.build.lib.testutil.ManualClock; - +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.LinkOption; +import java.nio.file.attribute.BasicFileAttributes; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -59,4 +62,19 @@ public class JavaIoFileSystemTest extends SymlinkAwareFileSystemTest { file.setLastModifiedTime(-1L); assertEquals(42000L, file.getLastModifiedTime()); } + + @Override + protected boolean isHardLinked(Path a, Path b) throws IOException { + return Files.readAttributes( + java.nio.file.Paths.get(a.toString()), + BasicFileAttributes.class, + LinkOption.NOFOLLOW_LINKS) + .fileKey() + .equals( + Files.readAttributes( + java.nio.file.Paths.get(b.toString()), + BasicFileAttributes.class, + LinkOption.NOFOLLOW_LINKS) + .fileKey()); + } } |