private CodeMemberMethod GenerateTestFixtureSetup(CodeTypeDeclaration testType, Feature feature) { CodeMemberMethod setupMethod = new CodeMemberMethod(); testType.Members.Add(setupMethod); setupMethod.Attributes = MemberAttributes.Public; setupMethod.Name = FIXTURESETUP_NAME; testGeneratorProvider.SetTestFixtureSetup(setupMethod); //testRunner = TestRunner.GetTestRunner(); var testRunnerField = GetTestRunnerExpression(); setupMethod.Statements.Add( new CodeAssignStatement( testRunnerField, new CodeMethodInvokeExpression( new CodeTypeReferenceExpression(TESTRUNNERMANAGER_TYPE), "GetTestRunner"))); //FeatureInfo featureInfo = new FeatureInfo("xxxx"); setupMethod.Statements.Add( new CodeVariableDeclarationStatement(FEATUREINFO_TYPE, "featureInfo", new CodeObjectCreateExpression(FEATUREINFO_TYPE, new CodeObjectCreateExpression(typeof(CultureInfo), new CodePrimitiveExpression(feature.Language)), new CodePrimitiveExpression(feature.Title), new CodePrimitiveExpression(feature.Description), new CodeFieldReferenceExpression( new CodeTypeReferenceExpression("GenerationTargetLanguage"), codeDomHelper.TargetLanguage.ToString()), GetStringArrayExpression(feature.Tags)))); //testRunner.OnFeatureStart(featureInfo); setupMethod.Statements.Add( new CodeMethodInvokeExpression( testRunnerField, "OnFeatureStart", new CodeVariableReferenceExpression("featureInfo"))); return(setupMethod); }