Я пытаюсь использовать AutoMapper с моими модульными тестами, использующими атрибуты DeploymentItem, чтобы читать файлы во время выполнения.Тестирование модуля с помощью AutoMapper с использованием атрибута DeploymentItem не работает - PlatformNotSupportedException
Вот мой код:
[TestClass]
public class UnitTest1
{
[TestMethod]
[DeploymentItem("Samples/demo.csv")]
public void TestMethod1()
{
Mapper.CreateMap<A, B>();
// test logic
}
}
class A
{
public string PropA { get; set; }
public bool PropB { get; set; }
}
class B
{
public string PropA { get; set; }
public bool PropB { get; set; }
}
Я получаю сообщение об ошибке на этой линии:
Mapper.CreateMap<A, B>();
но когда я удалить DeploymentItem атрибут тест просто отлично работает.
Я написал this article от создателя AutoMapper, но, похоже, не рассматривал проблему.
Сведения об исключении ниже:
System.TypeInitializationException was unhandled by user code
HResult=-2146233036
Message=The type initializer for 'AutoMapper.TypeMapFactory' threw an exception.
Source=AutoMapper
TypeName=AutoMapper.TypeMapFactory
StackTrace:
at AutoMapper.TypeMapFactory..ctor()
at AutoMapper.Mapper.<.cctor>b__0()
at AutoMapper.Internal.LazyFactory.LazyImpl`1.get_Value()
at AutoMapper.Mapper.get_ConfigurationProvider()
at AutoMapper.Mapper.get_Configuration()
at AutoMapper.Mapper.CreateMap[TSource,TDestination]()
at TNS.T4.MVC.Tests.Mocks.UnitTest1.TestMethod1() in c:\tns.visualstudio.com\Research Platform\Development\T4\TNS.T4.MVC.Tests\Mocks\UnitTest1.cs:line 13
InnerException: System.PlatformNotSupportedException
HResult=-2146233031
Message=This type is not supported on this platform IDictionaryFactory
Source=AutoMapper
StackTrace:
at AutoMapper.Internal.PlatformAdapter.Resolve[T](Boolean throwIfNotFound)
at AutoMapper.TypeMapFactory..cctor()
InnerException:
Спасибо!
Добро пожаловать в SO, Хавьер. – Brian
Спасибо Брайан :) –
Reg: - «но когда я удаляю атрибут DeploymentItem, тест просто отлично работает». Вы в этом уверены. Я получаю ту же ошибку даже без атрибута DeploymentItem – Spock