33
44namespace System . IO . Abstractions . TestingHelpers . Tests
55{
6+ using XFS = MockUnixSupport ;
7+
68 [ TestFixture ]
79 public class MockDirectoryInfoTests
810 {
@@ -11,7 +13,7 @@ public void MockDirectoryInfo_GetExtension_ShouldReturnEmptyString()
1113 {
1214 // Arrange
1315 var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData > ( ) ) ;
14- var directoryInfo = new MockDirectoryInfo ( fileSystem , @"c:\temp" ) ;
16+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\temp" ) ) ;
1517
1618 // Act
1719 var result = directoryInfo . Extension ;
@@ -25,7 +27,7 @@ public void MockDirectoryInfo_GetExtensionWithTrailingSlash_ShouldReturnEmptyStr
2527 {
2628 // Arrange
2729 var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData > ( ) ) ;
28- var directoryInfo = new MockDirectoryInfo ( fileSystem , @"c:\temp\" ) ;
30+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\temp\" ) ) ;
2931
3032 // Act
3133 var result = directoryInfo . Extension ;
@@ -34,13 +36,21 @@ public void MockDirectoryInfo_GetExtensionWithTrailingSlash_ShouldReturnEmptyStr
3436 Assert . AreEqual ( string . Empty , result ) ;
3537 }
3638
37- [ TestCase ( @"c:\temp\folder" , true ) ]
38- [ TestCase ( @"c:\temp\folder\notExistant" , false ) ]
39+ public static IEnumerable < object [ ] > MockDirectoryInfo_Exists_Cases
40+ {
41+ get
42+ {
43+ yield return new object [ ] { XFS . Path ( @"c:\temp\folder" ) , true } ;
44+ yield return new object [ ] { XFS . Path ( @"c:\temp\folder\notExistant" ) , false } ;
45+ }
46+ }
47+
48+ [ TestCaseSource ( "MockDirectoryInfo_Exists_Cases" ) ]
3949 public void MockDirectoryInfo_Exists ( string path , bool expected )
4050 {
4151 var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData >
4252 {
43- { @"c:\temp\folder\file.txt" , new MockFileData ( "Hello World" ) }
53+ { XFS . Path ( @"c:\temp\folder\file.txt" ) , new MockFileData ( "Hello World" ) }
4454 } ) ;
4555 var directoryInfo = new MockDirectoryInfo ( fileSystem , path ) ;
4656
@@ -55,27 +65,27 @@ public void MockDirectoryInfo_FullName_ShouldReturnFullNameWithoutIncludingTrail
5565 var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData >
5666 {
5767 {
58- @"c:\temp\folder\file.txt" ,
68+ XFS . Path ( @"c:\temp\folder\file.txt" ) ,
5969 new MockFileData ( "Hello World" )
6070 }
6171 } ) ;
62- var directoryInfo = new MockDirectoryInfo ( fileSystem , @"c:\temp\folder" ) ;
72+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\temp\folder" ) ) ;
6373
6474 var result = directoryInfo . FullName ;
6575
66- Assert . That ( result , Is . EqualTo ( @"c:\temp\folder" ) ) ;
76+ Assert . That ( result , Is . EqualTo ( XFS . Path ( @"c:\temp\folder" ) ) ) ;
6777 }
6878
6979 [ Test ]
7080 public void MockDirectoryInfo_GetFileSystemInfos_ShouldReturnBothDirectoriesAndFiles ( )
7181 {
7282 var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData >
7383 {
74- { @"c:\temp\folder\file.txt" , new MockFileData ( "Hello World" ) } ,
75- { @"c:\temp\folder\folder" , new MockDirectoryData ( ) }
84+ { XFS . Path ( @"c:\temp\folder\file.txt" ) , new MockFileData ( "Hello World" ) } ,
85+ { XFS . Path ( @"c:\temp\folder\folder" ) , new MockDirectoryData ( ) }
7686 } ) ;
7787
78- var directoryInfo = new MockDirectoryInfo ( fileSystem , @"c:\temp\folder" ) ;
88+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\temp\folder" ) ) ;
7989 var result = directoryInfo . GetFileSystemInfos ( ) ;
8090
8191 Assert . That ( result . Length , Is . EqualTo ( 2 ) ) ;
@@ -86,12 +96,12 @@ public void MockDirectoryInfo_GetFileSystemInfos_ShouldReturnDirectoriesAndNames
8696 {
8797 var fileSystem = new MockFileSystem ( new Dictionary < string , MockFileData >
8898 {
89- { @"c:\temp\folder\file.txt" , new MockFileData ( "Hello World" ) } ,
90- { @"c:\temp\folder\folder" , new MockDirectoryData ( ) } ,
91- { @"c:\temp\folder\older" , new MockDirectoryData ( ) }
99+ { XFS . Path ( @"c:\temp\folder\file.txt" ) , new MockFileData ( "Hello World" ) } ,
100+ { XFS . Path ( @"c:\temp\folder\folder" ) , new MockDirectoryData ( ) } ,
101+ { XFS . Path ( @"c:\temp\folder\older" ) , new MockDirectoryData ( ) }
92102 } ) ;
93103
94- var directoryInfo = new MockDirectoryInfo ( fileSystem , @"c:\temp\folder" ) ;
104+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\temp\folder" ) ) ;
95105 var result = directoryInfo . GetFileSystemInfos ( "f*" ) ;
96106
97107 Assert . That ( result . Length , Is . EqualTo ( 2 ) ) ;
@@ -102,14 +112,14 @@ public void MockDirectoryInfo_GetParent_ShouldReturnDirectoriesAndNamesWithSearc
102112 {
103113 // Arrange
104114 var fileSystem = new MockFileSystem ( ) ;
105- fileSystem . AddDirectory ( @"c:\a\b\c" ) ;
106- var directoryInfo = new MockDirectoryInfo ( fileSystem , @"c:\a\b\c" ) ;
115+ fileSystem . AddDirectory ( XFS . Path ( @"c:\a\b\c" ) ) ;
116+ var directoryInfo = new MockDirectoryInfo ( fileSystem , XFS . Path ( @"c:\a\b\c" ) ) ;
107117
108118 // Act
109119 var result = directoryInfo . Parent ;
110120
111121 // Assert
112- Assert . AreEqual ( @"c:\a\b" , result . FullName ) ;
122+ Assert . AreEqual ( XFS . Path ( @"c:\a\b" ) , result . FullName ) ;
113123 }
114124 }
115125}
0 commit comments