Я пытаюсь высмеять некоторые файловые операции. В "реальном" объекте у меня есть:
StreamWriter createFile( string name )
{
return new StreamWriter( Path.Combine( _outFolder, name ), false, Encoding.UTF8 ) );
}
В макетном объекте я хотел бы иметь:
StreamWriter createFile( string name )
{
var ms = new MemoryStream();
_files.Add( Path.Combine( _outFolder, name ), ms );
return new StreamWriter( ms, Encoding.UTF8 ) );
}
где _files - это словарь для хранения созданных файлов для последующей проверки.
Однако, когда потребитель закрывает StreamWriter, он также предоставляет MeamoryStream...: - (
Любые мысли о том, как преследовать это?