public void SetTestMethodCategories(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, IEnumerable <string> scenarioCategories) { _unitTestGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, scenarioCategories); UpdateAttributes(testMethod); }
private void SetupTestMethod(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, ScenarioDefinition scenarioDefinition, IEnumerable <Tag> additionalTags, string variantName, string exampleSetIdentifier, bool rowTest = false) { testMethod.Attributes = MemberAttributes.Public; testMethod.Name = GetTestMethodName(scenarioDefinition, variantName, exampleSetIdentifier); var friendlyTestName = scenarioDefinition.Name; if (variantName != null) { friendlyTestName = string.Format("{0}: {1}", scenarioDefinition.Name, variantName); } if (rowTest) { testGeneratorProvider.SetRowTest(generationContext, testMethod, friendlyTestName); } else { testGeneratorProvider.SetTestMethod(generationContext, testMethod, friendlyTestName); } List <string> scenarioCategories; decoratorRegistry.DecorateTestMethod(generationContext, testMethod, ConcatTags(scenarioDefinition.GetTags(), additionalTags), out scenarioCategories); if (scenarioCategories.Any()) { testGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, scenarioCategories); } }
private void SetupTestMethod( TestClassGenerationContext generationContext, CodeMemberMethod testMethod, StepsContainer scenarioDefinition, IEnumerable <Tag> additionalTags, string variantName, string exampleSetIdentifier, bool rowTest = false) { testMethod.Attributes = MemberAttributes.Public; testMethod.Name = GetTestMethodName(scenarioDefinition, variantName, exampleSetIdentifier); var friendlyTestName = scenarioDefinition.Name; if (variantName != null) { friendlyTestName = $"{scenarioDefinition.Name}: {variantName}"; } if (rowTest) { _unitTestGeneratorProvider.SetRowTest(generationContext, testMethod, friendlyTestName, scenarioDefinition.Description); } else { _unitTestGeneratorProvider.SetTestMethod(generationContext, testMethod, friendlyTestName, scenarioDefinition.Description); } _decoratorRegistry.DecorateTestMethod(generationContext, testMethod, ConcatTags(scenarioDefinition.GetTags(), additionalTags), out var scenarioCategories); if (scenarioCategories.Any()) { _unitTestGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, scenarioCategories); } }
private void SetupTestMethod(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, StepsContainer scenarioDefinition, IEnumerable <Tag> additionalTags, string variantName, string exampleSetIdentifier, bool rowTest = false) { testMethod.Attributes = MemberAttributes.Public; testMethod.Name = GetTestMethodName(scenarioDefinition, variantName, exampleSetIdentifier); var str = scenarioDefinition.Name; if (variantName != null) { if (variantName.IndexOf("_") == 0) { variantName = variantName.Remove(0, 1); } //NEW CODE str = $"{scenarioDefinition.Name}: {variantName}"; } if (rowTest) { _testGeneratorProvider.SetRowTest(generationContext, testMethod, str); } else { _testGeneratorProvider.SetTestMethod(generationContext, testMethod, str); } _decoratorRegistry.DecorateTestMethod(generationContext, testMethod, scenarioDefinition.GetTags().ConcatTags(additionalTags).ConcatTags(_featureVariantTags), out List <string> unprocessedTags); if (!unprocessedTags.Any()) { return; } _testGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, unprocessedTags); }
private void SetCategoriesFromTags(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, Tags tags) { testGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, GetNonIgnoreTags(tags)); if (HasIgnoreTag(tags)) { testGeneratorProvider.SetTestMethodIgnore(generationContext, testMethod); } }
public void SetTestMethodCategories(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, IEnumerable <string> scenarioCategories) { var nonNCrunchCategories = scenarioCategories.Where(category => !IsNCrunchAttributeIdentifier(category)).ToList(); baseGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, nonNCrunchCategories); foreach (string nCrunchCategories in scenarioCategories.Where(IsNCrunchAttributeIdentifier)) { string[] specFlowAttributeSplit = nCrunchCategories.Split(':'); string nCrunchAttributeIdentifier = specFlowAttributeSplit.First(); var nCrunchAttributeParameters = specFlowAttributeSplit.Last(); AddNcrunchAttributes(testMethod, nCrunchAttributeIdentifier, nCrunchAttributeParameters.Split(',').ToArray()); } }
public void SetTestMethodCategories(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, IEnumerable <string> scenarioCategories) { baseGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, scenarioCategories.Where(category => !category.StartsWith(NCrunchAttributePrefix))); foreach (string nCrunchCategories in scenarioCategories.Where(c => c.StartsWith(NCrunchAttributePrefix))) { string[] split = nCrunchCategories.Split('_'); string nCrunchAttributeIdentifier = split.First(); if (nCrunchAttributeIdentifier == NCrunchExclusivelyUses) { string nCrunchAttributeValue = split.Last(); codeDomHelper.AddAttribute(testMethod, NCrunchExclusivelyUses, nCrunchAttributeValue); } } }
private void SetupTestMethod(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, Scenario scenario, Tags additionalTags, bool rowTest = false) { testMethod.Attributes = MemberAttributes.Public; testMethod.Name = string.Format(TEST_NAME_FORMAT, scenario.Title.ToIdentifier()); if (rowTest) { testGeneratorProvider.SetRowTest(generationContext, testMethod, scenario.Title); } else { testGeneratorProvider.SetTestMethod(generationContext, testMethod, scenario.Title); } List <string> scenarioCategories; decoratorRegistry.DecorateTestMethod(generationContext, testMethod, ConcatTags(scenario.Tags, additionalTags), out scenarioCategories); if (scenarioCategories.Any()) { testGeneratorProvider.SetTestMethodCategories(generationContext, testMethod, scenarioCategories); } }
public void SetTestMethodCategories(TestClassGenerationContext generationContext, CodeMemberMethod testMethod, IEnumerable <string> scenarioCategories) { _innerGenerator.SetTestMethodCategories(generationContext, testMethod, scenarioCategories); }