Add list of not mutated methods to verbose output
If a method is OK for test coverage but has no contents that can be mutated, it is silently omitted from all output, even verbose. Having a list of methods (and possibly properties) that couldn't be mutated would help users not have a false sense of security / nasty surprises when they discover that mutation isn't checking everything they thought it was.
Yes I agree there's a potential for a false sense of security, thanks for raising @baccatabob .
Currently in verbose mode you'll get something like this when Fettle starts mutating:
Found file: MyClass.cs
Found member MyClass.MyMethod
Would a solution be to add skipped members inline, so the output becomes more like this?
Found file: MyClass.cs
Found member MyClass.MyMethod
...
Skipped member MyClass.MyUnmutateableMethod
Skipped member MyClass.MyUnmutateableProperty
That would be good - thanks. I don't know if it needs to be more prominent, including in the default output, but this seems to be a good implementation to start with at least.
👍
Looking at the code a bit more deeply, this is actually going to be harder than I thought 😅 To avoid delaying other tickets being released I'll push this back to the one after (0.5.2).