phpUnit - mock php extended exception object

Posted by awongh on Stack Overflow See other posts from Stack Overflow or by awongh
Published on 2010-05-14T01:44:34Z Indexed on 2010/05/14 1:54 UTC
Read the original article Hit count: 319

Filed under:
|
|
|
|

I'm testing some legacy code that extends the default php exception object. This code prints out a custom HTML error message.

I would like to mock this exception object in such a way that when the tested code generates an exception it will just echo the basic message instead of giving me the whole HTML message.

I cannot figure out a way to do this. It seems like you can test for explicit exceptions, but you can't change in a general way the behavior of an exception, and you also can't mock up an object that extends a default php functionality. ( can't think of another example of this beyond exceptions... but it would seem to be the case )

I guess the problem is, where would you attach the mocked object?? It seems like you can't interfere with 'throw new' and this is the place that the object method is called....

Or if you could somehow use the existing phpunit exception functionality to change the exception behavior the way you want, in a general way for all your code... but this seems like it would be hacky and bad....

© Stack Overflow or respective owner

Related posts about php

Related posts about phpunit