/// <summary> /// Inserts the assert. /// </summary> /// <param name="element"> /// The element. /// </param> /// <param name="anchor"> /// The anchor. /// </param> /// <param name="name"> /// The name. /// </param> private void CheckAssignment(IElement element, IStatement anchor, string name) { var functionDeclaration = anchor.GetContainingTypeMemberDeclaration() as IMethodDeclaration; if (functionDeclaration == null) { return; } var body = functionDeclaration.Body; if (body == null) { return; } var factory = CSharpElementFactory.GetInstance(element.GetPsiModule()); var csharpElement = element as ICSharpElement; if (csharpElement == null) { return; } var code = string.Format("if({0} == null) {{ }}", name); var statement = factory.CreateStatement(code); var result = body.AddStatementAfter(statement, anchor); var range = result.GetDocumentRange(); var codeFormatter = new CodeFormatter(); codeFormatter.Format(this.Solution, range); }