示例#1
0
        public void StopDoesNothingWithoutFunctionPtr_ExpectedBehavior()
        {
            var ctx = new MyContext();
            var e   = new FuncOperator <MyContext, byte>(null, null);

            e.Stop(ctx);
        }
        public void UpdateDoesNothingWithoutFunctionPtr_ExpectedBehavior()
        {
            var ctx = new MyContext();
            var e   = new FuncOperator <MyContext>(null, null);

            e.Update(ctx);
        }
示例#3
0
        public void StopCallsInternalFunctionPtr_ExpectedBehavior()
        {
            var ctx = new MyContext();
            var e   = new FuncOperator <MyContext, byte>(null, (context) => context.Done = true);

            e.Stop(ctx);

            Assert.AreEqual(true, ctx.Done);
        }
示例#4
0
        public void UpdateReturnsStatusInternalFunctionPtr_ExpectedBehavior()
        {
            var ctx = new MyContext();
            var e   = new FuncOperator <MyContext, byte>((context) => TaskStatus.Success, null);

            var status = e.Update(ctx);

            Assert.AreEqual(TaskStatus.Success, status);
        }
示例#5
0
        // ========================================================= OPERATORS

        /// <summary>
        ///     The operator of an Action / primitive task.
        /// </summary>
        /// <param name="action"></param>
        /// <returns></returns>
        public DB Do(Func <T, TaskStatus> action, Action <T> forceStopAction = null)
        {
            if (Pointer is IPrimitiveTask task)
            {
                var op = new FuncOperator <T>(action, forceStopAction);
                task.SetOperator(op);
            }
            else
            {
                throw new Exception("Tried to add an Operator, but the Pointer is not a Primitive Task!");
            }

            return((DB)this);
        }
示例#6
0
        public void StopThrowsIfBadContext_ExpectedBehavior()
        {
            var e = new FuncOperator <MyContext, byte>(null, null);

            e.Stop(null);
        }
        public void UpdateThrowsIfBadContext_ExpectedBehavior()
        {
            var e = new FuncOperator <MyContext>(null, null);

            e.Update(null);
        }