Mam kontroler &, który pozwala użytkownikowi przesłać plik na serwer. Odbywa się to w widoku przy użyciu input type='file'
iw kontrolerze, pobierając wartość Request.Files
(HttpRequestBase
, zwracając HttpFileCollectionWrapper
).Rhino Mocks: Mocking HttpRequestBase.Files
Mam trudności z kpiną z tego za pomocą Rhino Mocks.
HttpContextBase mockHttpContext = MockRepository.GenerateMock<HttpContextBase>();
HttpRequestBase mockRequest = MockRepository.GenerateMock<HttpRequestBase>();
mockHttpContext.Stub(x => x.Request).Return(mockRequest);
mockRequest.Stub(x => x.HttpMethod).Return("GET");
// Next line fails - throws MissingMethodException
// (Can't find a constructor with matching arguments)
HttpFileCollectionWrapper files =
MockRepository.GenerateMock<HttpFileCollectionWrapper>();
files.Stub(x => x.Count).Return(1);
mockRequest.Stub(x => x.Files).Return(files);
Konstruktor HttpFileCollectionWrapper
wymaga użycia HttpFileCollection
, to jednak ma konstruktora internal
.
Czy ktoś może zasugerować, jak uzyskać takie podejście, lub jego wariant, aby zadziałał?