public SetTestMethodIgnore ( TestClassGenerationContext generationContext, |
||
generationContext | TestClassGenerationContext | |
testMethod | ||
return | void |
public void Should_set_skip_attribute_for_theory() { // Arrange var provider = new XUnitTestGeneratorProvider(new CodeDomHelper(new CSharpCodeProvider())); // TODO: what about XUnit2TestGeneratorProvider ? // Act var codeMemberMethod = new CodeMemberMethod() { CustomAttributes = new CodeAttributeDeclarationCollection( new[] { new CodeAttributeDeclaration(XUnit2TestGeneratorProvider.THEORY_ATTRIBUTE) }) }; provider.SetTestMethodIgnore(null, codeMemberMethod); // Assert var modifiedAttribute = codeMemberMethod.CustomAttributes.OfType<CodeAttributeDeclaration>() .FirstOrDefault(a => a.Name == XUnitTestGeneratorProvider.THEORY_ATTRIBUTE); Assert.That(modifiedAttribute, Is.Not.Null); var attribute = modifiedAttribute.Arguments.OfType<CodeAttributeArgument>() .FirstOrDefault(a => a.Name == XUnitTestGeneratorProvider.THEORY_ATTRIBUTE_SKIP_PROPERTY_NAME); Assert.That(attribute, Is.Not.Null); var primitiveExpression = attribute.Value as CodePrimitiveExpression; Assert.That(primitiveExpression, Is.Not.Null); Assert.That(primitiveExpression.Value, Is.EqualTo(XUnitTestGeneratorProvider.SKIP_REASON)); }