Ошибка NUnit и Moles

#c# #nunit #moles

#c# #nunit #родинки

Вопрос:

Я пытаюсь запустить NUnit с помощью Moles, и я получаю странную ошибку, и я не совсем уверен, почему.

     [Test]
    [Moled]
    public void SendEmail_Test()
    {
        SIEmailService emailService = new SIEmailService
                                            {
                                                SendMailStringStringString = (email, subject, body) => { }
                                            };

        SIServiceLocator serviceLocator = new SIServiceLocator();
        serviceLocator.GetInstance(() => emailService);

        MLocatorFactory.GetInstance = (() => serviceLocator);


        IEmailservice = new EmailService();
        service.SendEmail("someone@there.com", null, null, null, DateTime.Now, null);
    }
  

Ошибка:

Проблема безопасности, которая возникает

Любые предложения о том, как исправить эту проблему с частично доверенным вызывающим абонентом???? Большое спасибо.

Ответ №1:

Добавьте в свои тесты сборку AllowPartiallyTrustedCallersAttribute. Но я не уверен, зачем это требуется. Может быть, вы запускаете свои тесты из общего сетевого ресурса?

Комментарии:

1. Нет, нет сетевого ресурса, пытающегося настроить пример, чтобы убедить команду использовать Moles …. не очень хорошо. Теперь узнаем больше о том, как передать их нам MSTest, потому что это так раздражает. Я посмотрю на вашу ссылку, спасибо за быстрый ответ.

2. Итак, я попытался добавить [assembly: AllowPartiallyTrustedCallers] в качестве атрибута в мой тестовый файл, и я все еще получаю то же сообщение об ошибке.