私は嘲笑するのが初めてです。私はHttpPostedFileBaseをRhino Mocksでモックする方法について少し指導が必要です。Rhino MockでHttpPostedFileBaseを嘲笑します
[Test]
public void Should_return_a_byte_array_with_a_length_of_eleven()
{
// Arrange
var stream = new MemoryStream(System.Text.Encoding.Default.GetBytes("TestContent"));
var httpPostedFileBase = MockRepository.GenerateMock<HttpPostedFileBase>();
httpPostedFileBase.Expect(x => x.InputStream).Return(stream);
httpPostedFileBase.Expect(x => x.ContentLength).Return(11);
// Act
var byteArray = httpPostedFileBase.ToByteArray();
// Assert
Assert.That(byteArray.Length, Is.EqualTo(11));
}
私は値が設定され得ることを伝えることができますが、私のextensionmethodがHttpPostedFileBaseを取得する時点で、それは失った:私は私のToByteArray()の拡張が期待通りに動作し、これは私がこれまで持っているものであることを確認しようとしていますそれはすべて価値です。どんな助けでも大歓迎です。
/クリストファー
ご返信ありがとうございます! 私はこれを試しましたが、私はまだ "期待されています:11しかし:0"です。 ToByteArray()とVerifyAllExpectations()をToByteArray()の後に呼び出す前に、Replay()を配置します。 私は前に嘲笑についてあなたの議論を聞いたことがあるが、私はそれを別の方法でこれを確認する方法をundestand確かではない。あなたはどうしたのですか? –
私の期待通りにRepeat.Any()を設定した後、あなたの提案がうまくいっています。 しかし、私はまだあなたがそれをどうやってやり遂げることができるかに興味があります。 –
いくつかのテストコンテンツでHttpPostedFileの実際のインスタンス(またはHttpPostedFileBaseのいくつかの派生物)を構築することができれば、その上で拡張メソッドを呼び出すことができます。しかし、私はHttpPostedFileクラスが100%確実であるとは限りません。 – Rytmis