Tengo un controlador de vista & que permite al usuario cargar un archivo en el servidor. Esto se hace en la vista usando un input type='file'
y en el controlador obteniendo el valor de Request.Files
(HttpRequestBase
, devolviendo un HttpFileCollectionWrapper
).Rhino Mocks: Mocking HttpRequestBase.Files
Tengo dificultades para burlar esto usando 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);
El constructor de HttpFileCollectionWrapper
requiere una HttpFileCollection
, sin embargo, esto tiene un constructor internal
.
¿Alguien puede sugerir cómo hacer funcionar este enfoque, o una variante del mismo?