HttpPostedFileWrapper
特に「ContentType」プロパティと「InputStream」プロパティをテストできるように、MVCオブジェクトをモックしようとしています。私は自分のモックを次のように設定しました:
var mockPostedFile = new Mock<HttpPostedFile>();
var mockFileWrapper = new Mock<HttpPostedFileWrapper>(mockPostedFile);
mockFileWrapper.Setup(file => file.ContentType).Returns("application/pdf");
mockFileWrapper.Setup(file => file.InputStream).Returns(fileStream);
しかし、最初の行でこの例外が発生します。
モックするタイプは、インターフェースまたは抽象クラスまたは非シールクラスである必要があります。
に変更HttpPostedFile
するHttpPostedFileBase
と、電話をかけたときにこの例外が発生しますmockFileWrapper.Object
クラスのプロキシをインスタンス化できません:System.Web.HttpPostedFileWrapper。指定された引数に一致するコンストラクターが見つかりませんでした:Moq.Mock`1 [System.Web.HttpPostedFileBase]
誰かが私がこれをやってのけるために何ができるか知っていますか?