Software Engineer. Tech Editor @ Ray Wenderlich. PhD in Computer Science. Aspiring Actor.
Whether you’re doing TDD or not, having tests that verify your code is a great source of confidence that whatever feature you added, or whatever thing you’ve just refactored, didn’t break any other part of your codebase.
The dominant approach is where you make the external class conform to your own API. You know best how your code should look like. There’s no reason to compromise because of some outdated (or just plain badly designed) API.