Quiero escribir una prueba unitaria que pruebe la función de una clase llamada UploadedFile.¿Cómo puedo hacer que HttpContext esté disponible para ser utilizado por mis Pruebas Unitarias?
El problema al que me enfrento es que el constructor estático de esta clase utiliza la propiedad HttpContext.Current y como estoy ejecutando mi prueba unitaria desde una biblioteca de clases, no tengo un HttpContext en el momento de la prueba.
Look at my constructor estático:
static UploadedFile()
{
if (HttpContext.Current == null)
throw new Exception("web server not available");
HttpServerUtility server = HttpContext.Current.Server;
// SET UploadedFileMappingFile Names:
_resourceFileNames = new StringDictionary();
_resourceFileNames[_suppoertedFileStructures] = server.MapPath(SupportedUploadedFileStructures);
_resourceFileNames[_supportedFileStructuresXSD] = server.MapPath(SupportedUploadedFileStructuresXSD);
_resourceFileNames[UploadedFileEnum.UploadedFileFormatENUM.CSV.ToString()] = server.MapPath(UploadedFileColumnMap);
}
¿Qué debo hacer en mi entorno de pruebas para que HttpContext.Current
no será nulo y que puede establecer con éxito este:
HttpServerUtility server = HttpContext.Current.Server;
¡Gracias por la idea! No he usado Rhino.Mocks.dll hasta ahora, por desgracia. Parece que tengo que familiarizarme con esto primero y luego intentaré implementar tu sugerencia. ¡Gracias! – pencilCake