UploadedFileというクラスの機能をテストする単体テストを作成したいと思います。
私が直面している問題は、このクラスの静的コンストラクターがHttpContext.Currentプロパティを使用していることです。また、クラスライブラリから単体テストを実行しているため、テスト時にHttpContextがありません。
私の静的コンストラクターを見てください:
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);
}
HttpContext.Current
nullにならない ように、テスト環境で何をすればよいですか。これを正常に設定できます。
HttpServerUtility server = HttpContext.Current.Server;