@@ -157,6 +157,51 @@ public void MockDirectoryInfo_EnumerateFileSystemInfos_ShouldReturnDirectoriesAn
157157 Assert . That ( result . Length , Is . EqualTo ( 2 ) ) ;
158158 }
159159
160+ [ Test ]
161+ public void MockDirectoryInfo_EnumerateFileSystemInfos_ShouldReturnDirectoriesAndNamesWithSearchPatternRecursive ( )
162+ {
163+ var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData >
164+ {
165+ { XFS . Path ( @"c:\temp\folder\file.txt" ) , new MockFileData ( "" ) } ,
166+ { XFS . Path ( @"c:\temp\folder\folder" ) , new MockDirectoryData ( ) } ,
167+ { XFS . Path ( @"c:\temp\folder\older" ) , new MockDirectoryData ( ) }
168+ } ) ;
169+
170+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\" ) ) ;
171+ var result = directoryInfo . EnumerateFileSystemInfos ( "*" , SearchOption . AllDirectories ) . ToArray ( ) ;
172+
173+ Assert . That ( result . Length , Is . EqualTo ( 5 ) ) ;
174+ }
175+
176+ #if FEATURE_ENUMERATION_OPTIONS
177+ [ Test ]
178+ public void MockDirectoryInfo_EnumerateFileSystemInfos_ShouldReturnDirectoriesAndNamesWithSearchPatternRecursiveEnumerateOptions ( )
179+ {
180+ var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData >
181+ {
182+ { XFS . Path ( @"c:\temp\folder\file.txt" ) , new MockFileData ( "" ) } ,
183+ { XFS . Path ( @"c:\temp\folder\folder" ) , new MockDirectoryData ( ) } ,
184+ { XFS . Path ( @"c:\temp\folder\older" ) , new MockDirectoryData ( ) }
185+ } ) ;
186+
187+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\" ) ) ;
188+
189+ var enumerationOptions = new EnumerationOptions ( )
190+ {
191+ MatchType = MatchType . Win32 ,
192+ RecurseSubdirectories = true ,
193+ IgnoreInaccessible = true ,
194+ ReturnSpecialDirectories = false ,
195+ AttributesToSkip = FileAttributes . Hidden ,
196+ MatchCasing = MatchCasing . PlatformDefault ,
197+ } ;
198+
199+ var result = directoryInfo . EnumerateFileSystemInfos ( "*" , enumerationOptions ) . ToArray ( ) ;
200+
201+ Assert . That ( result . Length , Is . EqualTo ( 5 ) ) ;
202+ }
203+ #endif
204+
160205 [ Test ]
161206 public void MockDirectoryInfo_GetParent_ShouldReturnDirectoriesAndNamesWithSearchPattern ( )
162207 {
0 commit comments