Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Microsoft Fakes generates UnitTestIsolationException

I have written very simple unit test project to see abilities of Microsoft Fakes. And I have executed on System assembly the menu command "Add Fakes Assembly".

public static class Y2KChecker
{
    public static void Check()
    {
        if (DateTime.Now == new DateTime(2000, 1, 1))
            throw new ApplicationException("y2kbug!");
    }
}

[TestClass]
public class UnitTest1
{
    [TestMethod]
    public void TestYear()
    {
        using (ShimsContext.Create())
        {
            ShimDateTime.NowGet = () => new DateTime(2000, 1, 1);
            Y2KChecker.Check();
        }
    }
}

But in line using (ShimContext.Create()) I get always the UnitTestIsolationException:

Unexpected error returned by SetDetourProvider in profiler library 'C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\IntelliTrace\11.0.0\Microsoft.IntelliTrace.Profiler.11.0.0.dll'.

With my Visual Studio 2012 Update 2 is also installed Resharper. How fix this exception?

like image 920
Vasiliy Mazhekin Avatar asked Dec 19 '13 16:12

Vasiliy Mazhekin


2 Answers

As of November 2012 you cannot run Resharper and MS Fakes at the same time. A request to make it compatible was put in almost a year ago.

http://devnet.jetbrains.com/message/5470396?tstart=0

like image 142
JakJackal Avatar answered Nov 05 '22 02:11

JakJackal


By now (March 2014) you can run tests that uses MS Fakes only in Visual Studio Test Runner (vstest.console.exe). Of course you can continue to use ReSharper, but its test runners can't be able to run your tests.

like image 44
Vladimir Almaev Avatar answered Nov 05 '22 01:11

Vladimir Almaev