diff options
author | 2015-05-26 16:35:27 +0000 | |
---|---|---|
committer | 2015-05-27 16:43:34 +0000 | |
commit | 91cfbff0d89853d5f7ffbbc190eb0e5d55bece39 (patch) | |
tree | b94bb13b4d335d5285abcea8b5eb62c0bc566c3c /src/test/java/com/google/devtools/build/lib | |
parent | 7eef6f369716f0e3b116f6188bf676965585c872 (diff) |
Skylark: File object can now retrieve dirname/basename.
--
MOS_MIGRATED_REVID=94478925
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java b/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java index c4b3f53d28..d0b4b2bcdf 100644 --- a/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java +++ b/src/test/java/com/google/devtools/build/lib/actions/ArtifactTest.java @@ -309,4 +309,32 @@ public class ArtifactTest { new PathFragment("b/c"), new LabelArtifactOwner(Label.parseAbsoluteUnchecked("//foo:bar"))).serializeToString()); } + + @Test + public void testLongDirname() throws Exception { + String dirName = createDirNameArtifact().getDirname(); + + assertThat(dirName).isEqualTo("aaa/bbb/ccc"); + } + + @Test + public void testDirnameInExecutionDir() throws Exception { + Artifact artifact = new Artifact(scratch.file("/foo/bar.txt"), + Root.asDerivedRoot(scratch.dir("/foo"))); + + assertThat(artifact.getDirname()).isEqualTo("."); + } + + @Test + public void testCanConstructPathFromDirAndFilename() throws Exception { + Artifact artifact = createDirNameArtifact(); + String constructed = + String.format("%s/%s", artifact.getDirname(), artifact.getFilename()); + + assertThat(constructed).isEqualTo("aaa/bbb/ccc/ddd"); + } + + private Artifact createDirNameArtifact() throws Exception { + return new Artifact(scratch.file("/aaa/bbb/ccc/ddd"), Root.asDerivedRoot(scratch.dir("/"))); + } } |