From e478d993039ccfc1112970df9374c8154f9f6458 Mon Sep 17 00:00:00 2001 From: josh Date: Tue, 1 Feb 2022 13:51:56 -0800 Subject: [PATCH] Streams created with File.Create should be ReadWrite by default --- .../MockFile.cs | 2 +- .../MockFileCreateTests.cs | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/System.IO.Abstractions.TestingHelpers/MockFile.cs b/src/System.IO.Abstractions.TestingHelpers/MockFile.cs index 2368b5784..a6120d13e 100644 --- a/src/System.IO.Abstractions.TestingHelpers/MockFile.cs +++ b/src/System.IO.Abstractions.TestingHelpers/MockFile.cs @@ -138,7 +138,7 @@ public override Stream Create(string path, int bufferSize) => /// public override Stream Create(string path, int bufferSize, FileOptions options) => - CreateInternal(path, FileAccess.Write, options); + CreateInternal(path, FileAccess.ReadWrite, options); private Stream CreateInternal(string path, FileAccess access, FileOptions options) { diff --git a/tests/System.IO.Abstractions.TestingHelpers.Tests/MockFileCreateTests.cs b/tests/System.IO.Abstractions.TestingHelpers.Tests/MockFileCreateTests.cs index dd6cdef2b..46fb57a73 100644 --- a/tests/System.IO.Abstractions.TestingHelpers.Tests/MockFileCreateTests.cs +++ b/tests/System.IO.Abstractions.TestingHelpers.Tests/MockFileCreateTests.cs @@ -288,5 +288,18 @@ public void MockFile_Create_ShouldWorkWithRelativePath() Assert.That(fileSystem.File.Exists(relativeFile)); } + + [Test] + public void MockFile_Create_CanReadFromNewStream() + { + string fullPath = XFS.Path(@"c:\something\demo.txt"); + var fileSystem = new MockFileSystem(); + fileSystem.AddDirectory(XFS.Path(@"c:\something")); + + using (var stream = fileSystem.File.Create(fullPath)) + { + Assert.That(stream.CanRead, Is.True); + } + } } }