aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2015-05-26 16:35:27 +0000
committerGravatar Laurent Le Brun <laurentlb@google.com>2015-05-27 16:43:34 +0000
commit91cfbff0d89853d5f7ffbbc190eb0e5d55bece39 (patch)
treeb94bb13b4d335d5285abcea8b5eb62c0bc566c3c /src/test/java/com/google/devtools/build/lib
parent7eef6f369716f0e3b116f6188bf676965585c872 (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.java28
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("/")));
+ }
}