Package org.elasticsearch.test
Class DiffableTestUtils
java.lang.Object
org.elasticsearch.test.DiffableTestUtils
public final class DiffableTestUtils
extends java.lang.Object
Utilities that simplify testing of diffable classes
-
Field Summary
Fields Modifier and Type Field Description protected static int
NUMBER_OF_DIFF_TEST_RUNS
-
Method Summary
Modifier and Type Method Description static <T extends org.elasticsearch.cluster.Diffable<T>>
TassertDiffApplication(T remoteChanges, T localInstance, org.elasticsearch.cluster.Diff<T> diffs)
Asserts that changes are applied correctly, i.e.static <T extends org.elasticsearch.common.io.stream.Writeable>
TassertSerialization(T testInstance, org.elasticsearch.common.io.stream.NamedWriteableRegistry namedWriteableRegistry, org.elasticsearch.common.io.stream.Writeable.Reader<T> reader)
Asserts that testInstance can be correctly.static <T extends org.elasticsearch.common.io.stream.Writeable>
TcopyInstance(T diffs, org.elasticsearch.common.io.stream.NamedWriteableRegistry namedWriteableRegistry, org.elasticsearch.common.io.stream.Writeable.Reader<T> reader)
Simulates sending diffs over the wirestatic <T extends org.elasticsearch.cluster.Diffable<T>>
voidtestDiffableSerialization(java.util.function.Supplier<T> testInstance, java.util.function.Function<T,T> modifier, org.elasticsearch.common.io.stream.NamedWriteableRegistry namedWriteableRegistry, org.elasticsearch.common.io.stream.Writeable.Reader<T> reader, org.elasticsearch.common.io.stream.Writeable.Reader<org.elasticsearch.cluster.Diff<T>> diffReader)
Tests making random changes to an object, calculating diffs for these changes, sending this diffs over the wire and appling these diffs on the other side.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
NUMBER_OF_DIFF_TEST_RUNS
protected static final int NUMBER_OF_DIFF_TEST_RUNS- See Also:
- Constant Field Values
-
-
Method Details
-
assertDiffApplication
public static <T extends org.elasticsearch.cluster.Diffable<T>> T assertDiffApplication(T remoteChanges, T localInstance, org.elasticsearch.cluster.Diff<T> diffs)Asserts that changes are applied correctly, i.e. that applying diffs to localInstance produces that object equal but not the same as the remoteChanges instance. -
copyInstance
public static <T extends org.elasticsearch.common.io.stream.Writeable> T copyInstance(T diffs, org.elasticsearch.common.io.stream.NamedWriteableRegistry namedWriteableRegistry, org.elasticsearch.common.io.stream.Writeable.Reader<T> reader) throws java.io.IOExceptionSimulates sending diffs over the wire- Throws:
java.io.IOException
-
testDiffableSerialization
public static <T extends org.elasticsearch.cluster.Diffable<T>> void testDiffableSerialization(java.util.function.Supplier<T> testInstance, java.util.function.Function<T,T> modifier, org.elasticsearch.common.io.stream.NamedWriteableRegistry namedWriteableRegistry, org.elasticsearch.common.io.stream.Writeable.Reader<T> reader, org.elasticsearch.common.io.stream.Writeable.Reader<org.elasticsearch.cluster.Diff<T>> diffReader) throws java.io.IOExceptionTests making random changes to an object, calculating diffs for these changes, sending this diffs over the wire and appling these diffs on the other side.- Throws:
java.io.IOException
-
assertSerialization
public static <T extends org.elasticsearch.common.io.stream.Writeable> T assertSerialization(T testInstance, org.elasticsearch.common.io.stream.NamedWriteableRegistry namedWriteableRegistry, org.elasticsearch.common.io.stream.Writeable.Reader<T> reader) throws java.io.IOExceptionAsserts that testInstance can be correctly.- Throws:
java.io.IOException
-