public void ValidationWithResultApplicativeFunctor_HappyDay_Test() { var result = 0.0m; var d1 = Fun.Create(() => Choice.NewChoice1Of2 <decimal, Failure <string> >(2.5m)); var d2 = Fun.Create(() => Choice.NewChoice1Of2 <decimal, Failure <string> >(2.5m)); var callbackSome = Act.Create((decimal x) => result = x); var callbackNone = Act.Create((Failure <string> x) => Assert.True(false)); ValidationWithResultApplicativeFunctor(d1, d2, callbackSome, callbackNone); Assert.Equal(100, result); }
public void ValidationWithChoiceMonad_HappyDay_Test() { var result = 0.0m; var d1 = Fun.Create(() => Choice.NewChoice1Of2 <decimal, string>(2.5m)); var d2 = Fun.Create(() => Choice.NewChoice1Of2 <decimal, string>(2.5m)); var callbackSome = Act.Create((decimal x) => result = x); var callbackNone = new Action <string>(x => Assert.True(false)); ValidationWithChoiceMonad(d1, d2, callbackSome, callbackNone); Assert.Equal(100, result); }