Esempio n. 1
0
        public void ContinuationRejectTypedSuccess()
        {
            string result = ContinuationModule.Reject <string, int>("fail")
                            .Match(_ => string.Empty, text => text);

            Assert.AreEqual("fail", result);
        }
Esempio n. 2
0
        public void ContinuationResolveTypedFail()
        {
            int result = ContinuationModule.Resolve <bool, int>(5)
                         .Match(value => value, _ => 0);

            Assert.AreEqual(5, result);
        }
Esempio n. 3
0
        public void ContinuationResolve()
        {
            int result = ContinuationModule.Resolve(10)
                         .Match(value => value, _ => 0);

            Assert.AreEqual(10, result);
        }
Esempio n. 4
0
        public void ContinuationAllWithTwoContinuationBothFailed()
        {
            var continuation1 = ContinuationModule.Reject <string, int>("fail");
            var continuation2 = ContinuationModule.Reject <float, bool>(3.5f);

            (int, bool)result =
                ContinuationModule.All(continuation1, continuation2)
                .Match(values => values, _ => (0, false));

            Assert.AreEqual((0, false), result);
        }
Esempio n. 5
0
        public void ContinuationAllWithTwoContinuationSuccess()
        {
            var continuation1 = ContinuationModule.Resolve <string, int>(10);
            var continuation2 = ContinuationModule.Resolve <float, bool>(true);

            (int, bool)result =
                ContinuationModule.All(continuation1, continuation2)
                .Match(values => values, _ => (0, false));

            Assert.AreEqual((10, true), result);
        }
Esempio n. 6
0
        public void ContinuationAllWithThreeContinuationSuccess()
        {
            var continuation1 = ContinuationModule.Resolve <string, int>(10);
            var continuation2 = ContinuationModule.Resolve <float, bool>(true);
            var continuation3 = ContinuationModule.Resolve <bool, string>("success");

            (int, bool, string)result =
                ContinuationModule.All(continuation1, continuation2, continuation3)
                .Match(values => values, _ => (0, false, string.Empty));

            Assert.AreEqual((10, true, "success"), result);
        }
Esempio n. 7
0
        public void ContinuationAllWithThreeContinuationAllFailed()
        {
            var continuation1 = ContinuationModule.Reject <string, int>("fail");
            var continuation2 = ContinuationModule.Reject <float, bool>(3.5f);
            var continuation3 = ContinuationModule.Reject <bool, string>(false);

            (int, bool, string)result =
                ContinuationModule.All(continuation1, continuation2, continuation3)
                .Match(values => values, _ => (0, false, string.Empty));

            Assert.AreEqual((0, false, string.Empty), result);
        }
Esempio n. 8
0
        public void ContinuationAllWithFourContinuationFourthFailed()
        {
            var continuation1 = ContinuationModule.Resolve <string, int>(10);
            var continuation2 = ContinuationModule.Resolve <float, bool>(true);
            var continuation3 = ContinuationModule.Resolve <bool, string>("success");
            var continuation4 = ContinuationModule.Reject <int, double>(0);

            (int, bool, string, double)result =
                ContinuationModule.All(continuation1, continuation2, continuation3, continuation4)
                .Match(values => values, _ => (0, false, string.Empty, -1.0));

            Assert.AreEqual((0, false, string.Empty, -1.0), result);
        }