Visual Studio 2015, Microsoft Fakes and System.Security.Claims.Claim

У меня есть интерфейс в библиотеке классов .NET 4.5 (не 4.6),

public interface IBrokenFakeInterface
{
    Claim WhyWontItGenerateFakeOfThisInterface();
}

В моем проекте модульного тестирования (MSTest), когда я добавил Fakes для соответствующей сборки, содержащей этот интерфейс, я получаю предупреждение компилятора о том, что он не может создать заглушку.

Предупреждение: Невозможно сгенерировать заглушку для ClassLibrary1.IBrokenFakeInterface: метод System.Security.Claims.Claim ClassLibrary1.IBrokenFakeInterface.WhyWontItGenerateFakeOfThisInterface () unstubbable: метод является абстрактным и не может быть заглушен. целевая версия фреймворка. ClassLibrary1Tests C: \ Users \ jacobsonba \ Documents \ Visual Studio 2015 \ Projects_tempFakeFiguringOut \ ClassLibrary1Tests \ Fakes \ ClassLibrary1.fakes

Хотя это всего лишь предупреждение компилятора, оно приводит к ошибкам компилятора, когда проект модульного теста полагается на StubIBrokenFakeInterface, поскольку конкретный тип Stub не создается генератором подделок.

Кто-нибудь знает причину этой ошибки и ее решение? Изменение проектов на .NET 4.6 решает эту проблему, но для нас это неприемлемый вариант. Точно такой же код прекрасно компилируется в VS2013; на самом деле, если его скомпилировать с VS2013, а затем открыть решение в VS2015, оно продолжит работать, пока не будет восстановлена ​​сборка Fakes. Так что, очевидно, проблема в фальшивом генераторе, который использует VS2015.

Ответы на вопрос(0)

Ваш ответ на вопрос