Minor cleanups to GraphTester
Refactors SkyFunction map creation into the tester from tests.
Encapsulates modifiedValues better.
--
MOS_MIGRATED_REVID=105982046
diff --git a/src/test/java/com/google/devtools/build/skyframe/GraphTester.java b/src/test/java/com/google/devtools/build/skyframe/GraphTester.java
index f7c2da4..2d44e9d 100644
--- a/src/test/java/com/google/devtools/build/skyframe/GraphTester.java
+++ b/src/test/java/com/google/devtools/build/skyframe/GraphTester.java
@@ -16,13 +16,14 @@
import static com.google.common.truth.Truth.assertThat;
import com.google.common.base.Preconditions;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.events.Event;
import com.google.devtools.build.lib.util.Pair;
import com.google.devtools.build.skyframe.SkyFunction.Environment;
import com.google.devtools.build.skyframe.SkyFunctionException.Transience;
-import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
@@ -46,6 +47,8 @@
public class GraphTester {
public static final SkyFunctionName NODE_TYPE = SkyFunctionName.FOR_TESTING;
+ private final ImmutableMap<SkyFunctionName, ? extends SkyFunction> functionMap =
+ ImmutableMap.of(GraphTester.NODE_TYPE, new DelegatingFunction());
private final Map<SkyKey, TestFunction> values = new HashMap<>();
private final Set<SkyKey> modifiedValues = new LinkedHashSet<>();
@@ -77,8 +80,12 @@
return getOrCreate(key, true).setConstantValue(value);
}
- public Collection<SkyKey> getModifiedValues() {
- return modifiedValues;
+ public ImmutableSet<SkyKey> getModifiedValues() {
+ return ImmutableSet.copyOf(modifiedValues);
+ }
+
+ public void clearModifiedValues() {
+ modifiedValues.clear();
}
public SkyFunction getFunction() {
@@ -276,8 +283,8 @@
}
}
- public DelegatingFunction createDelegatingFunction() {
- return new DelegatingFunction();
+ public ImmutableMap<SkyFunctionName, ? extends SkyFunction> getSkyFunctionMap() {
+ return functionMap;
}
/**