Hi Alejandro,
First, Isolator requires only the Isolate.CleanUp(); in the teardown.
You can also use the [Isolated] attribute in every test instead.
Do you have a reason for using TestUtil.ResetAllStatics(); and TypeMock.MockManager.ClearAll(); in the cleanup?
We noticed the call to \\\"TestUtil.ResetAllStatics()\\\" somehow called our class\\\'s constructor and creating a \\\"real instance of \\\'ILog.Error\\\'\\\"
That\\\'s the defined behavior:
A #1:
Fake.AllInstances<ILog> creates an ILog handler from which you can set the behavior for all objects. Read more about it AllInstances.
Fake.Instance<ILog> creates a fake ILog \\\"instance\\\".
Without seeing the full test context I can\\\'t say why it failed exactly.
A #2:
I call Isolate.Fake.Instance<x> and setup a static method to return that x, that instance \\\'x\\\' should be unique across unit tests if I call Isolate.CleanUp(); .... right?
Have you tried setting up the fakes for your tests in the [SetUp] attribute? (If the tests use a common setup especially when it\\\'s static.)
When dealing with statics it might be safer to set it up per-test (as you are running it 5 times), since the Isolate.CleanUp cleans all the setups.