Add Experiment#compareMonoResult
This commit is contained in:
parent
e20a4c1f77
commit
513f19370a
|
@ -18,6 +18,7 @@ import java.util.concurrent.Executor;
|
||||||
import java.util.function.Supplier;
|
import java.util.function.Supplier;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An experiment compares the results of two operations and records metrics to assess how frequently they match.
|
* An experiment compares the results of two operations and records metrics to assess how frequently they match.
|
||||||
|
@ -70,6 +71,14 @@ public class Experiment {
|
||||||
this.experimentNullMismatchTimer = experimentNullMismatchTimer;
|
this.experimentNullMismatchTimer = experimentNullMismatchTimer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public <T> void compareMonoResult(final T expected, final Mono<T> experimentMono) {
|
||||||
|
final Timer.Sample sample = Timer.start();
|
||||||
|
|
||||||
|
experimentMono.subscribe(
|
||||||
|
actual -> recordResult(expected, actual, sample),
|
||||||
|
cause -> recordError(cause, sample));
|
||||||
|
}
|
||||||
|
|
||||||
public <T> void compareFutureResult(final T expected, final CompletionStage<T> experimentStage) {
|
public <T> void compareFutureResult(final T expected, final CompletionStage<T> experimentStage) {
|
||||||
final Timer.Sample sample = Timer.start();
|
final Timer.Sample sample = Timer.start();
|
||||||
|
|
||||||
|
|
|
@ -463,8 +463,7 @@ public class MessagesCache extends RedisClusterPubSubAdapter<String, String> imp
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
experiment.compareFutureResult(mrmMessage.toBuilder().clearSharedMrmKey().build(),
|
experiment.compareMonoResult(mrmMessage.toBuilder().clearSharedMrmKey().build(), mrmMessageMono);
|
||||||
mrmMessageMono.toFuture());
|
|
||||||
|
|
||||||
return mrmMessageMono;
|
return mrmMessageMono;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue