@@ -877,6 +877,70 @@ public void MockDirectory_GetDirectories_WithTopDirectories_ShouldOnlyReturnTopD
877877 Assert . That ( actualResult , Is . EquivalentTo ( new [ ] { XFS . Path ( @"C:\Folder\.foo\" ) , XFS . Path ( @"C:\Folder\foo.foo\" ) } ) ) ;
878878 }
879879
880+ [ Test ]
881+ public void MockDirectory_GetDirectories_RelativeWithNoSubDirectories_ShouldReturnDirectories ( )
882+ {
883+ // Arrange
884+ var fileSystem = new MockFileSystem ( ) ;
885+ fileSystem . Directory . CreateDirectory ( "Folder" ) ;
886+
887+ // Act
888+ var actualResult = fileSystem . Directory . GetDirectories ( "Folder" ) ;
889+
890+ // Assert
891+ Assert . That ( actualResult , Is . Empty ) ;
892+ }
893+
894+ [ TestCase ( @"Folder\SubFolder" ) ]
895+ [ TestCase ( @"Folder" ) ]
896+ public void MockDirectory_GetDirectories_RelativeDirectory_WithoutChildren_ShouldReturnNoChildDirectories ( string relativeDirPath )
897+ {
898+ // Arrange
899+ var fileSystem = new MockFileSystem ( ) ;
900+ fileSystem . Directory . CreateDirectory ( relativeDirPath ) ;
901+
902+ // Act
903+ var actualResult = fileSystem . Directory . GetDirectories ( relativeDirPath ) ;
904+
905+ // Assert
906+ Assert . That ( actualResult , Is . Empty ) ;
907+ }
908+
909+ [ TestCase ( @"Folder\SubFolder" ) ]
910+ [ TestCase ( @"Folder" ) ]
911+ public void MockDirectory_GetDirectories_RelativeDirectory_WithChildren_ShouldReturnChildDirectories ( string relativeDirPath )
912+ {
913+ // Arrange
914+ const string currentDirectory = @"T:\foo" ;
915+ var fileSystem = new MockFileSystem ( null , currentDirectory : currentDirectory ) ;
916+ fileSystem . Directory . CreateDirectory ( relativeDirPath ) ;
917+ fileSystem . Directory . CreateDirectory ( relativeDirPath + @"\child" ) ;
918+
919+ // Act
920+ var actualResult = fileSystem . Directory . GetDirectories ( relativeDirPath ) ;
921+
922+ // Assert
923+ CollectionAssert . AreEqual (
924+ new [ ] { currentDirectory + @"\" + relativeDirPath + @"\child\" } ,
925+ actualResult
926+ ) ;
927+ }
928+
929+ [ Test ]
930+ public void MockDirectory_GetDirectories_AbsoluteWithNoSubDirectories_ShouldReturnDirectories ( )
931+ {
932+ // Arrange
933+ var fileSystem = new MockFileSystem ( ) ;
934+ fileSystem . Directory . CreateDirectory ( "Folder" ) ;
935+
936+ // Act
937+ var fullPath = fileSystem . Path . GetFullPath ( "Folder" ) ;
938+ var actualResult = fileSystem . Directory . GetDirectories ( fullPath ) ;
939+
940+ // Assert
941+ Assert . That ( actualResult , Is . Empty ) ;
942+ }
943+
880944 [ Test ]
881945 public void MockDirectory_GetDirectories_WithAllDirectories_ShouldReturnsAllMatchingSubFolders ( )
882946 {
0 commit comments