public BlockParserContext(IProblemPipe problemPipe, Fragment returnFragmentType, List<ReturnCondition> returnConditions, IBlacklistManager blacklistManager, BlockParser.InspectCallback inspect) { _problemPipe = problemPipe; _returnFragmentType = returnFragmentType; _returnConditions = returnConditions; _blacklistManager = blacklistManager; _inspect = inspect; }
public void Parse_ValidReturnWithIf_ReturnsCorrectReturnFragmentType() { _blockParser = new BlockParser (_blacklist, _problemPipeStub,Fragment.CreateNamed( "DummyFragment"), new List<ReturnCondition>()); TypeNode stringTypeNode = IntrospectionUtility.TypeNodeFactory<string>(); Method sampleMethod = TestHelper.GetSample<BlockParserSample> ("ValidReturnWithLiteralAssignmentInsideIf", stringTypeNode); Block sample = sampleMethod.Body.Statements[3] as Block; BasicBlock returnedBlock = _blockParser.Parse (sample); var preConditionFragmentType = returnedBlock.PreConditions[0].Fragment; Assert.That (preConditionFragmentType, Is.EqualTo (Fragment.CreateNamed("DummyFragment"))); }
public void SetUp() { _blacklist = new IDbCommandBlacklistManagerStub(); _problemPipeStub = new ProblemPipeStub(); _returnPreCondition = new ReturnCondition ("returnPreCondition", Fragment.CreateNamed("ReturnPreConditionFragmentType")); List<ReturnCondition> returnPreConditions = new List<ReturnCondition> { _returnPreCondition }; _blockParser = new BlockParser (_blacklist, _problemPipeStub, c_returnFragmentType, returnPreConditions); }
public void Parse_ReturnFragmentRequiredUnsafeReturn_ReturnsCorrectReturnFragmentType2() { var returnFragmentType = Fragment.CreateNamed ("ReturnFragmentType2"); _blockParser = new BlockParser (_blacklist, _problemPipeStub, returnFragmentType, new List<ReturnCondition>()); Method sampleMethod = TestHelper.GetSample<BlockParserSample> ("UnsafeReturnWhenFragmentRequired"); Block sample = sampleMethod.Body.Statements[1] as Block; BasicBlock returnedBlock = _blockParser.Parse (sample); var preConditionFragment = returnedBlock.PreConditions[0].Fragment; Assert.That (preConditionFragment, Is.EqualTo (returnFragmentType)); }