일부 파일 조작을 조롱하려고합니다. "진짜"개체에서 내가 가진 :기본 스트림의 처리를 피하십시오.
StreamWriter createFile(string name)
{
return new StreamWriter(Path.Combine(_outFolder, name), false, Encoding.UTF8));
}
을 내가 가지고 같은 을 거라고 mock 객체에서 :
_FILESStreamWriter createFile(string name)
{
var ms = new MemoryStream();
_files.Add(Path.Combine(_outFolder, name), ms);
return new StreamWriter(ms, Encoding.UTF8));
}
나중에 검사를 위해 만든 파일을 저장하는 사전이다. 소비자가에서는 StreamWriter를 닫을 때
그러나, 그것은 또한는 :-(... MeamoryStream을 처분
이 추구하는 방법에 대한 어떤 생각?를 StreamWriter를의
나는 이것을 좋아한다! 그러나 플러시()는 불필요합니다. 플러싱을 필요로하는 "위"스트림입니다.이 시점에서 이미 완료되었습니다. –
@danbystrom, 도움이되어 기쁩니다. 맞습니다. StreamWriter는 처리되기 전에 플러시됩니다. 그러나 시크 (Seek)는 유용 할 수 있습니다. –