@@ -23,7 +23,7 @@ public void MockFileStreamFactory_CreateForExistingFile_ShouldReturnStream(FileM
23
23
var fileStreamFactory = new MockFileStreamFactory ( fileSystem ) ;
24
24
25
25
// Act
26
- var result = fileStreamFactory . Create ( @"c:\existing.txt" , fileMode ) ;
26
+ var result = fileStreamFactory . Create ( @"c:\existing.txt" , fileMode , FileAccess . Write ) ;
27
27
28
28
// Assert
29
29
Assert . IsNotNull ( result ) ;
@@ -39,7 +39,7 @@ public void MockFileStreamFactory_CreateForNonExistingFile_ShouldReturnStream(Fi
39
39
var fileStreamFactory = new MockFileStreamFactory ( fileSystem ) ;
40
40
41
41
// Act
42
- var result = fileStreamFactory . Create ( XFS . Path ( @"c:\not_existing.txt" ) , fileMode ) ;
42
+ var result = fileStreamFactory . Create ( XFS . Path ( @"c:\not_existing.txt" ) , fileMode , FileAccess . Write ) ;
43
43
44
44
// Assert
45
45
Assert . IsNotNull ( result ) ;
@@ -72,7 +72,6 @@ public void MockFileStreamFactory_CreateForAnExistingFile_ShouldReplaceFileConte
72
72
[ TestCase ( FileMode . Create ) ]
73
73
[ TestCase ( FileMode . Open ) ]
74
74
[ TestCase ( FileMode . CreateNew ) ]
75
- [ TestCase ( FileMode . Append ) ]
76
75
public void MockFileStreamFactory_CreateInNonExistingDirectory_ShouldThrowDirectoryNotFoundException ( FileMode fileMode )
77
76
{
78
77
// Arrange
@@ -86,6 +85,33 @@ public void MockFileStreamFactory_CreateInNonExistingDirectory_ShouldThrowDirect
86
85
Assert . Throws < DirectoryNotFoundException > ( ( ) => fileStreamFactory . Create ( XFS . Path ( @"C:\Test\NonExistingDirectory\some_random_file.txt" ) , fileMode ) ) ;
87
86
}
88
87
88
+ [ Test ]
89
+ public void MockFileStreamFactory_AppendAccessWithReadWriteMode_ShouldThrowArgumentException ( )
90
+ {
91
+ var fileSystem = new MockFileSystem ( ) ;
92
+
93
+ Assert . Throws < ArgumentException > ( ( ) =>
94
+ {
95
+ fileSystem . FileStream . New ( XFS . Path ( @"c:\path.txt" ) , FileMode . Append , FileAccess . ReadWrite ) ;
96
+ } ) ;
97
+ }
98
+
99
+ [ Test ]
100
+ [ TestCase ( FileMode . Append ) ]
101
+ [ TestCase ( FileMode . Truncate ) ]
102
+ [ TestCase ( FileMode . Create ) ]
103
+ [ TestCase ( FileMode . CreateNew ) ]
104
+ [ TestCase ( FileMode . Append ) ]
105
+ public void MockFileStreamFactory_InvalidModeForReadAccess_ShouldThrowArgumentException ( FileMode fileMode )
106
+ {
107
+ var fileSystem = new MockFileSystem ( ) ;
108
+
109
+ Assert . Throws < ArgumentException > ( ( ) =>
110
+ {
111
+ fileSystem . FileStream . New ( XFS . Path ( @"c:\path.txt" ) , fileMode , FileAccess . Read ) ;
112
+ } ) ;
113
+ }
114
+
89
115
[ Test ]
90
116
[ TestCase ( FileMode . Open ) ]
91
117
[ TestCase ( FileMode . Truncate ) ]
0 commit comments