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 org.slf4j.Logger;
|
||||
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.
|
||||
|
@ -70,6 +71,14 @@ public class Experiment {
|
|||
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) {
|
||||
final Timer.Sample sample = Timer.start();
|
||||
|
||||
|
|
|
@ -463,8 +463,7 @@ public class MessagesCache extends RedisClusterPubSubAdapter<String, String> imp
|
|||
}
|
||||
});
|
||||
|
||||
experiment.compareFutureResult(mrmMessage.toBuilder().clearSharedMrmKey().build(),
|
||||
mrmMessageMono.toFuture());
|
||||
experiment.compareMonoResult(mrmMessage.toBuilder().clearSharedMrmKey().build(), mrmMessageMono);
|
||||
|
||||
return mrmMessageMono;
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue