Esempio n. 1
0
        public void DoTestTryCallOn()
        {
            var lfOkFunctor = new Func<String>(() => { return "Test"; });
            var lfFailFunctor = new Func<String>(() => { throw new NotImplementedException(); });

            Assert.AreEqual(lfOkFunctor.TryCall("failsafe"), "Test");
            Assert.AreEqual(lfFailFunctor.TryCall("failsafe"), "failsafe");
            Assert.Catch<NotImplementedException>(() => {
                lfFailFunctor();
            });

            Assert.AreEqual(lfOkFunctor.TryCall("failsafe", (e, _) => { return "failsafe"; }), "Test");
            Assert.AreEqual(lfFailFunctor.TryCall("failsafe", (e, _) => { return "Test"; }), "Test");
            Assert.AreEqual(lfFailFunctor.TryCall("failsafe", (e, _) => { return e == null ? null : "Test"; }), "Test");
        }
Esempio n. 2
0
        public void DoTestTryCallOn()
        {
            var lfOkFunctor   = new Func <String>(() => { return("Test"); });
            var lfFailFunctor = new Func <String>(() => { throw new NotImplementedException(); });

            Assert.AreEqual(lfOkFunctor.TryCall("failsafe"), "Test");
            Assert.AreEqual(lfFailFunctor.TryCall("failsafe"), "failsafe");
            Assert.Catch <NotImplementedException>(() => {
                lfFailFunctor();
            });

            Assert.AreEqual(lfOkFunctor.TryCall("failsafe", (e, _) => { return("failsafe"); }), "Test");
            Assert.AreEqual(lfFailFunctor.TryCall("failsafe", (e, _) => { return("Test"); }), "Test");
            Assert.AreEqual(lfFailFunctor.TryCall("failsafe", (e, _) => { return(e == null ? null : "Test"); }), "Test");
        }