Jose Manuel Royo Jiménez

Hello Jose, thanks you for your interest.
We are actively using this library in our application, but it’s private so i won’t be able to expose its code to public. However let me try to explain the intention behind these 2 methods:
Use createStableTestContext when you want your fixture to be stable when you start doing you manipulations with components (it’s 95% of time really). It will create a test context and wait for angular fixture to become stable, so all lifetime hooks are guaranteed to be called by the time method finished.

But sometimes (that missing 5%) you might have tests which are more complicated /and / or more dynamic in its nature. Those tests might create you component in a dynamic way, change Inputs of your component between different tests on the fly and so on.

In this case you would prefer to first change all required input values, and only then trigger the lifetime hooks(e.g. ngOnInit)

Check this gist for a small example: