У меня есть проект модульного теста, который ссылается на FluentAssertions, я получаю ошибки при обновлении до версии 3

у меня есть тестовый проект .net 4.0, который бросает метод не найденных исключений для Should () метод расширения.

затем я заметил, что он также бросал исключения для типа int.

кто-нибудь знает, почему FluentAssertions V3 ведет себя таким образом?

пока я возвращаюсь к своей версии 2.2.

для справки, это сайт проекта FluentAssersions https://github.com/dennisdoomen/fluentassertions/releases

вот пример кода : enter image description here

var actualItems = new List<string> { "" };
actualItems.All(i => i == "X").Should().BeTrue("All items should be X") ;

вот исключение:

Error   237 'bool' does not contain a definition for 'Should' 
and no extension method 'Should' accepting a first argument of type 'bool' 
could be found (are you missing a using directive or an assembly reference?)
C:\pathtoproject\Tests.cs

1 ответов


Это потому, что v3.0 требуется .NET 4.0.3 для тестовых проектов. Это самая ранняя версия, поддерживаемая портативными библиотеками классов. Это немного запутанно, но если вы уже установили .NET 4.5, вы уже используете 4.0.3. Я обновил примечания к выпуску.