2012-02-29 5 views
3

moqユニット・テストで次の行を使用すると、System.BadImageFormatExceptionが発生します。CoherenceとMoqを使用する場合のSystem.BadImageFormatException

mockDataAccessLayer.Setup(dal => dal.ListItems(It.IsAny<List<IFilter>>())); 

例外:

System.BadImageFormatException : [C:\Users\ric\AppData\Local\Temp\q3a2acu1.brz\RJ.DAL.test\assembly\dl3\cb8fb82f\e33b012a_c5f6cc01\RJ.DAL.test.DLL] The signature is incorrect. 
at RJ.DAL.test.DALLayerTest.DataAccessLayerTest() 

フルユニットテスト:

[Test] 
public void DataAccessLayerTest() 
{ 
    var mockDataAccessLayer = new Mock<IDAL>(); 
    mockDataAccessLayer.Setup(dal => dal.ListItems(It.IsAny<List<IFilter>>())); 
    var dataAccessLayer = mockDataAccessLayer.Object; 
} 

私はせずに別の場所に非常によく似たコードを使用すると、私は、問題はのIFilterの一覧であるかなり確信していますIt.IsAnyはうまく動作します。何か案は?

+2

最初のGoogle検索、完全一致:http://code.google.com/p/moq/issues/detail?id=152 –

答えて

8

Hansが述べたように、インターフェイスのアセンブリがないためでした。インタフェースを含むdllを追加することで問題は解決しました。

関連する問題