Unquote: Что мне не хватает? - PullRequest
3 голосов
/ 20 октября 2011

Я пытаюсь заставить библиотеку Unquote работать с xUnit в .NET 4, и мне совсем не повезло с запуском тестов. Итак, я разбил его на самые простые шаги воспроизведения, которые я мог. Кто-нибудь знает, чего мне не хватает?

  1. Создать новый проект библиотеки F #.
  2. Используйте NuGet для добавления ссылок xUnit и Unquote.
  3. Вставьте следующий код ...

Я получил настоящий тест непосредственно с домашней страницы Unquote, но содержание не имеет значения, потому что оно не запускается.

module Tests

open Xunit
open Swensen.Unquote

[<Fact>]
let ``demo Unquote xUnit support`` () =
    test <@ ([3; 2; 1; 0] |> List.map ((+) 1)) = [1 + 3..1 + 0] @>

Затем я компилирую сборку и загружаю ее в программу тестирования GUI xUnit.net (64-разрядная версия, CLR 4) и получаю следующую ошибку при запуске теста:

Tests.demo Unquote xUnit support : System.MissingMethodException : Method not found:
'Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Quotations.FSharpExpr> Swensen.Unquote.Extensions.Expr.ReduceFully(Microsoft.FSharp.Quotations.FSharpExpr)'.
Stack Trace:
   at Tests.demo Unquote xUnit support()

1 Ответ

6 голосов
/ 20 октября 2011

Неважно, я понял это.Я использую предварительный просмотр VS 11, и, хотя я нацеливаюсь на .NET 4.0 в своем проекте, проект ссылается на неправильную версию FSharp.Core.dll:

C: \ Program Files (x86) \ Ссылочные сборки \ Microsoft \ FSharp \ 3.0 \ Runtime \ v4.0 \ FSharp.Core.dll

Вместо этого я изменил ссылку на эту, и все стало работать правильно:

C: \ Program Files (x86) \ Справочные сборки \ Microsoft \ FSharp \ 2.0 \ Runtime \ v4.0 \ FSharp.Core.dll

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...