not related to your changes, but shouldn't those test `$this->fail()` as last step of the `try` block to ensure that a exception is thrown and catched at all?