diff options
Diffstat (limited to 'src/test/java/com/google/devtools/build/skyframe/GraphTester.java')
-rw-r--r-- | src/test/java/com/google/devtools/build/skyframe/GraphTester.java | 29 |
1 files changed, 26 insertions, 3 deletions
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 657dd00e4a..a30af1c5c0 100644 --- a/src/test/java/com/google/devtools/build/skyframe/GraphTester.java +++ b/src/test/java/com/google/devtools/build/skyframe/GraphTester.java @@ -19,9 +19,12 @@ import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; +import com.google.common.collect.Interner; import com.google.common.collect.Iterables; +import com.google.devtools.build.lib.concurrent.BlazeInterners; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.ExtendedEventHandler.Postable; +import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.lib.util.Pair; import com.google.devtools.build.skyframe.SkyFunction.Environment; import com.google.devtools.build.skyframe.SkyFunctionException.Transience; @@ -161,7 +164,7 @@ public class GraphTester { } public static SkyKey skyKey(String key) { - return LegacySkyKey.create(NODE_TYPE, key); + return Key.create(key); } /** A value in the testing graph that is constructed in the tester. */ @@ -276,8 +279,8 @@ public class GraphTester { public static ImmutableList<SkyKey> toSkyKeys(String... names) { ImmutableList.Builder<SkyKey> result = ImmutableList.builder(); - for (int i = 0; i < names.length; i++) { - result.add(LegacySkyKey.create(GraphTester.NODE_TYPE, names[i])); + for (String element : names) { + result.add(Key.create(element)); } return result.build(); } @@ -400,4 +403,24 @@ public class GraphTester { } }; } + + @AutoCodec.VisibleForSerialization + @AutoCodec + static class Key extends AbstractSkyKey<String> { + private static final Interner<Key> interner = BlazeInterners.newWeakInterner(); + + @AutoCodec.VisibleForSerialization + Key(String arg) { + super(arg); + } + + static Key create(String arg) { + return interner.intern(new Key(arg)); + } + + @Override + public SkyFunctionName functionName() { + return SkyFunctionName.FOR_TESTING; + } + } } |