2015-11-11 5 views
1

Я сделал следующий класс:типа BOOL в несовместим с типом Constraints.constraint

type numbers(Roman:string, CommonNumber:string)= 
      member this.RomanNumber=Roman 
      member this.ExpectedNumber=CommonNumber 

      member this.MakeComparision()= 
          string (convert(Roman))= CommonNumber 

, а затем я попытался запустить следующий тест на нем:

#if INTERACTIVE 
#r @"..\packages\NUnit.2.6.4\lib\nunit.framework.dll" 
#r @"..\packages\FsUnit.1.4.0.0\lib\net45\FsUnit.NUnit.dll" 
#endif 


    open NUnit.Framework 
    open FsUnit 


[<TestFixture>] 

    type ``Given a Roman number ``()= 
     let setNumbers=new numbers("XCIX","99") 


     [<Test>] 

     member this. 
       ``Whether the right convert for this number must be exist``()= 
       setNumbers.MakeComparision() |> should be true 

В последнем линия setNumbers.MakeComparision() |> should be true, на слово true, у меня есть следующий Erorr:

The type bool in not compatible with type Constraints.constraint 

и мне с этим не справиться!!

ответ

1

о том, что противная один (упал на него часто)

вам необходимо либо использовать equal со значением true:

member this. 
     ``Whether the right convert for this number must be exist``()= 
     setNumbers.MakeComparision() 
     |> should equal true 

или вам нужно использовать Trueограничение с be:

member this. 
     ``Whether the right convert for this number must be exist``()= 
     setNumbers.MakeComparision() 
     |> should be True 

см. documentation

Смежные вопросы