Hasta ahora he creado la siguiente interfaz:¿Cómo se burla de la clase DirectoryInfo?
public interface IDirectoryInfoWrapper
{
public IFileInfoWrapper[] GetFiles(string searchPattern, SearchOption searchType);
public IDirectoryInfoWrapper[] GetDirectories();
}
He estado yendo a través del código de sustitución DirectoryInfo con IDirectoryInfoWrapper
. Todo iba bien hasta que encontré esto:
// Check that the directory is valid
DirectoryInfo directoryInfo = new DirectoryInfo(argPath);
if (directoryInfo.Exists == false)
{
throw new ArgumentException
("Invalid IFileFinder.FindFiles Directory Path: " + argPath);
}
No tiene sentido poner el constructor en la interfaz, por lo que debo hacer con esta línea de código:
DirectoryInfo directoryInfo = new DirectoryInfo(argPath);
interfaz, por supuesto, va sin un constructor, pero su implementación con el constructor. –