public MortgageResult ApplyForMortgage(MortgageApplication app) { | |
var oldProcessor = new LegacyProcessor(EmailFacade.Instance); | |
var newProcessor = new ExperimentalProcessor(new FakeEmailSender()); // or null potentially | |
return Scientist.Science<MortgageResult>( | |
"Side effects are bad", | |
experiment => | |
{ | |
experiment.Use(() => oldProcessor.Analyze(app)); | |
experiment.Try(() => newProcessor.Analyze(app)); | |
experiment.Compare((x, y) => x.Score == y.Score); | |
}); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment