public void ShouldNotMutateUppercaseString() { var node = SyntaxFactory.MemberAccessExpression( SyntaxKind.SimpleMemberAccessExpression, SyntaxFactory.IdentifierName("String"), SyntaxFactory.IdentifierName("Empty")); var mutator = new StringEmptyMutator(); var result = mutator.ApplyMutations(node).ToList(); result.ShouldBeEmpty(); }
public void ShouldNotMutateUppercaseString() { // Arrange var node = SyntaxFactory.MemberAccessExpression( SyntaxKind.SimpleMemberAccessExpression, SyntaxFactory.IdentifierName("String"), SyntaxFactory.IdentifierName("Empty")); var mutator = new StringEmptyMutator(); // Act var result = mutator.ApplyMutations(node).ToList(); // Assert result.ShouldNotContain( m => m.ReplacementNode is LiteralExpressionSyntax && ((LiteralExpressionSyntax)m.ReplacementNode).Token.ValueText == "Stryker was here!"); }
public void ShouldMutateLowercaseString() { var node = SyntaxFactory.MemberAccessExpression( SyntaxKind.SimpleMemberAccessExpression, SyntaxFactory.PredefinedType( SyntaxFactory.Token(SyntaxKind.StringKeyword)), SyntaxFactory.IdentifierName("Empty")); var mutator = new StringEmptyMutator(); var result = mutator.ApplyMutations(node).ToList(); var mutation = result.ShouldHaveSingleItem(); mutation.DisplayName.ShouldBe("String mutation"); var replacement = mutation.ReplacementNode.ShouldBeOfType <LiteralExpressionSyntax>(); replacement.Token.ValueText.ShouldBe("Stryker was here!"); }