public void ReturnNewStep()
        {
            var newStep      = new MockMethodStep <int, string>();
            var returnedStep = ((ICanHaveNextMethodStep <int, string>)_funcMock).SetNextStep(newStep);

            Assert.Same(newStep, returnedStep);
        }
        public void ReturnNewStep()
        {
            var newStep      = new MockMethodStep <int, ValueTuple>();
            var returnedStep = ((ICanHaveNextMethodStep <int, ValueTuple>)_actionMock).SetNextStep(newStep);

            Assert.Same(newStep, returnedStep);
        }
        public void SetStepUsedByCallForParameterCase()
        {
            bool called  = false;
            var  newStep = new MockMethodStep <int, ValueTuple>();

            newStep.Call.Action(_ => called = true);
            ((ICanHaveNextMethodStep <int, ValueTuple>)_actionMock).SetNextStep(newStep);
            _actionMock.Call(5);
            Assert.True(called);
        }
        public void SetStepUsedByCall()
        {
            bool called  = false;
            var  newStep = new MockMethodStep <ValueTuple, ValueTuple>();

            newStep.Call.Action(_ => { called = true; });
            ((ICanHaveNextMethodStep <ValueTuple, ValueTuple>)_parameterLessActionMock).SetNextStep(newStep);
            _parameterLessActionMock.Call();
            Assert.True(called);
        }
        public void SetStepUsedByCallForParameterCase()
        {
            bool called  = false;
            var  newStep = new MockMethodStep <int, string>();

            newStep.Call.Func(_ =>
            {
                called = true;
                return(string.Empty);
            });
            ((ICanHaveNextMethodStep <int, string>)_funcMock).SetNextStep(newStep);
            _funcMock.Call(5);
            Assert.True(called);
        }
        public void SetStepUsedByCall()
        {
            bool called  = false;
            var  newStep = new MockMethodStep <ValueTuple, string>();

            newStep.Call.Func(_ =>
            {
                called = true;
                return(string.Empty);
            });
            ((ICanHaveNextMethodStep <ValueTuple, string>)_parameterLessFuncMock).SetNextStep(newStep);
            _parameterLessFuncMock.Call();
            Assert.True(called);
        }