aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils
diff options
context:
space:
mode:
authorGravatar brandjon <brandjon@google.com>2018-01-18 09:20:24 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-01-18 09:22:24 -0800
commita0c056e406fab214b30b12851829194fbf908a3a (patch)
treeb5cde6537154d0320f3a066cca68917c9654be97 /src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils
parent8e2ae53375c0a615c53ab4e10f27856025a83fb1 (diff)
Add TestUtils#ConstantStringCodec
RELNOTES: None PiperOrigin-RevId: 182390511
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/TestUtils.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/TestUtils.java b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/TestUtils.java
index 1b0f1814ac..8eafe7f14f 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/TestUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils/TestUtils.java
@@ -18,6 +18,7 @@ import static com.google.common.truth.Truth.assertThat;
import com.google.devtools.build.lib.skyframe.serialization.ObjectCodec;
import com.google.devtools.build.lib.skyframe.serialization.SerializationException;
+import com.google.devtools.build.lib.skyframe.serialization.strings.StringCodecs;
import com.google.devtools.build.lib.syntax.Environment.Frame;
import com.google.protobuf.CodedInputStream;
import com.google.protobuf.CodedOutputStream;
@@ -62,4 +63,30 @@ public class TestUtils {
assertFramesEqual(frame1.getParent(), frame2.getParent());
}
}
+
+ /**
+ * Fake string codec that replaces all input and output string values with the constant "dummy".
+ */
+ public static class ConstantStringCodec implements ObjectCodec<String> {
+
+ private static final ObjectCodec<String> stringCodec = StringCodecs.simple();
+
+ @Override
+ public Class<String> getEncodedClass() {
+ return String.class;
+ }
+
+ @Override
+ public void serialize(String value, CodedOutputStream codedOut)
+ throws SerializationException, IOException {
+ stringCodec.serialize("dummy", codedOut);
+ }
+
+ @Override
+ public String deserialize(CodedInputStream codedIn)
+ throws SerializationException, IOException {
+ stringCodec.deserialize(codedIn);
+ return "dummy";
+ }
+ }
}