Нэнси: Почему тесты xUnit зависят от движка Razor? - PullRequest
0 голосов
/ 03 апреля 2012

Почему тесты Nancy / xUnit в Visual Studio 11 зависят от механизма представления Razor?Я использую движок представления Нэнси по умолчанию (SSVE).Нужен ли другой загрузчик?

Тест

[Fact]
public void Register_mentor_Should_redirect_to_mentor_home()
{
    // Given
    var bootstrapper = new DefaultNancyBootstrapper();
    var browser = new Browser(bootstrapper);

    //When
    var response = browser.Post("/register", (with) =>
    {
        with.HttpRequest();
        with.FormValue("role", "mentor");
    });

    // Then
    response.ShouldHaveRedirectedTo("/mentor");
}

Я получаю следующее исключение

Исключение enter image description here

1 Ответ

0 голосов
/ 03 апреля 2012

Это не так.Вы видите это исключение по двум причинам:

  • Вы установили Nget.ViewEngines.Razor nuget, который также включает Nancy.ViewEngines.Razor.BuildProviders.dll (по состоянию на Nancy 0.10).DLL существует, чтобы включить Intellisense во время разработки для бритвы Nancy.Файл копируется в ваш каталог \ bin при каждой сборке через событие после сборки, которое Nuget устанавливает

  • Исключение BadImageFormatException связано с тем, что в нашем проекте Nancy.ViewEngines была ошибка.Проект Razor.BuildProviders, предназначенный только для систем x86.Это было решено в следующем выпуске 0.11 и уже проверено в основной ветке

Так что, чтобы исправить это, удалите Nget.ViewEngines.Razor nuget (вы сказали, что использовали только представления SSVE) и все должно работать нормально (удаление nuget также приведет к удалению события после сборки)

...