GSoC/GCI Archive
Google Code-in 2010 Mono Project

Provide Gendarme rules templates for Visual Studio .NET

completed by: Nick Rioux

mentors: spouliot

Background

The first steps to write any new rule for Gendarme are a bit repetitive. There are three (3) types of (very) similar rules: Assembly, Type and Method. The same, repetitive, tasks are doubled since the developer also needs to create new unit tests file(s) to come along his rule.


Task

The task is to provide items and project templates that the developer can select (e.g. File|New...) to start writing a new rule (or project). The "item" templates content must be in C# and follow the Mono source code guidelines (available at http://www.mono-project.com/Coding_Guidelines).

Notes:
* you'll need Visual Studio 2008 or 2010 to build (and test) this task;
* the difficulty is not making the template content, but all the other stuff around (e.g. references).


Deliverable

The templates must include:
• three (item) templates to create Assembly, Type and Method rules;
• three (item) templates to create Assembly, Type and Method unit tests;
• one (project) template to create a new rule assembly;
• one (project) template to create a new rule unit test assembly; and
• the setup/instructions to install the templates into the IDE

Information about creating templates can be found on MSDN @
http://msdn.microsoft.com/en-us/library/6db0hwky%28v=VS.90%29.aspx


Resources

* Gendarme web site: http://www.mono-project.com/Gendarme

* Mailing-list / discussions: http://groups.google.com/group/gendarme

* IRC: #gendarme on GimpNET