Subdivide derived root types so that Artifact class methods can always handle derived artifact paths properly regardless of the --experimental_sibling_repository_layout value.

PiperOrigin-RevId: 353665168
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/LocationFunctionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/LocationFunctionTest.java
index 6220fd9..c7e18b3 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/LocationFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/LocationFunctionTest.java
@@ -200,7 +200,8 @@
     FileSystem fs = new InMemoryFileSystem(DigestHashFunction.SHA256);
     if (path.startsWith("/exec/out")) {
       return ActionsTestUtil.createArtifact(
-          ArtifactRoot.asDerivedRoot(fs.getPath("/exec"), false, "out"), fs.getPath(path));
+          ArtifactRoot.asDerivedRoot(fs.getPath("/exec"), false, false, false, "out"),
+          fs.getPath(path));
     } else {
       return ActionsTestUtil.createArtifact(
           ArtifactRoot.asSourceRoot(Root.fromPath(fs.getPath("/exec"))), fs.getPath(path));