I'm suspecting this project might be more than my budget will allow, and if that is the case, I may not be able to get the approval to fund it.
I need a plugin, that works in VS 2012.
This is to validate that all exceptions are either handled or called out.
For each Method/Property
- Extract a list of Exception Types that are listed in the XML comments for that method.
- Look at all the method calls and property calls used in the method, to see a list of exceptions that its XML comments claim can be thrown.
- Compare the lists.
- ANY Exceptions that could be thrown by code in a method that are not called out in the XML comments get listed as an error in the error list.
- If a potential exception is in a Try Catch, and caught, it should NOT throw an exception
- ANY Catch statement using the root Exception object, should be listed as a Warning, instead of an error.
- ANY XML Comment announcing the root Exception object, should be listed as an ERROR.
It does not need to capture code exceptions.
- I.e. an integer is passed into a method, and something else is divided by it.
- - I do not need this code to detect that something is divided by an integer that *Could* be a zero. There are too many things like this.
I believe that all possible thrown exceptions from a method should be captured/dealt with, or listed in the XML Comments. The problem, is that nothing in Microsoft enforces this. If I, or others on my team, are writing code, I want Intellisense to list all the possible exceptions I might have to watch out for. (It does this now, but nothing checks to make sure that all potentially known exceptions are listed in the XML Comments, and there fore Intellisense.)
I am open to conversations of how to change/improve this, but that would need to be discussed prior to accepting a bid.
I am flexible to how to execute this, if it is just an option that will automatically happen during a build, or a separate menu or icon that can be called (so long as its location makes sense)
5,000$ is not in my budget for this, and if it costs more than that, there is no way I would be able to get it approved. If someone bids around 500 or less, and I trust their responses that it can be done, I would be apt to accept it. If it is over 500, then I will need to get approval to get funding. If you feel it is over 500 in work, please bid what you think it will take. Perhaps there are problems or considerations other developers that bid lower are not taking into account.
Additional note, I am a highly experienced C# developer, but have not developed plugins for VS, nor do I have the time to go try it. I will be doing code reviews, and hope for good quality code. (I.e. It should pass if tested by itself, and variable names/text in comments should make sense.)
Time is not a specific requirement, so please estimate how long it will take you. I do, however, expect regular updates on the code, at least one drop every week so I can review that something is being done, and comment on any issues I am seeing.