I have a static method in my code that I would like somehow to mock.
I am using jmock.
One way I suppose I could do this is to have “wrapper class” around the static method and
mock this but I was hoping for a better solution.
I am going about this the wrong way?
FEEDBACK:
I was going to have a interface and class that had a method that just called the static method. It would allow me to mock the logic by just mocking the call to this wrapper class. (I feel dirty even talking about it 🙂 )
We don’t support mocking static methods in jMock because it doesn’t fit our design approach. We prefer not to use static methods for significant features that can affect the state of the system. We tend to use them just to support the OO code and make it more readable. That’s why we view mocking a static methods as a hint that there’s a problem. One exception is where it’s in a third-party library, but we would probably wrap that in something more object-oriented anyway.