public void ShouldNotMutate() { var target = new AssignmentStatementMutator(); var originalNode = SyntaxFactory.AssignmentExpression( SyntaxKind.SimpleAssignmentExpression, SyntaxFactory.IdentifierName("a"), SyntaxFactory.IdentifierName("b") ); var result = target.ApplyMutations(originalNode).ToList(); result.ShouldBeEmpty(); }
public void ShouldNotMutateStringLiteralsBoth() { var target = new AssignmentStatementMutator(); var originalNode = SyntaxFactory.AssignmentExpression( SyntaxKind.AddAssignmentExpression, SyntaxFactory.LiteralExpression(SyntaxKind.StringLiteralExpression), SyntaxFactory.LiteralExpression(SyntaxKind.StringLiteralExpression) ); var result = target.ApplyMutations(originalNode).ToList(); result.ShouldBeEmpty(); }
public void AssignmentMutator_ShouldMutate(SyntaxKind input, SyntaxKind expectedOutput) { var target = new AssignmentStatementMutator(); var originalNode = SyntaxFactory.AssignmentExpression( input, SyntaxFactory.IdentifierName("a"), SyntaxFactory.IdentifierName("b") ); var result = target.ApplyMutations(originalNode).ToList(); result.ShouldHaveSingleItem(); result.ShouldContain(x => x.ReplacementNode.IsKind(expectedOutput)); result.ShouldContain(x => x.Type.Equals("AssignmentStatementMutator")); }