Skip to content

Commit 52e071f

Browse files
committed
Add .NET9 target
1 parent fab80f9 commit 52e071f

22 files changed

+108
-15
lines changed

Directory.Build.props

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55
<Authors>Tatham Oddie &amp; friends</Authors>
66
<SignAssembly Condition="'$(Configuration)' == 'Release'">True</SignAssembly>
77
<AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)StrongName.snk</AssemblyOriginatorKeyFile>
8-
<LangVersion>9.0</LangVersion>
8+
<LangVersion>latest</LangVersion>
99
<PackageTags>testing</PackageTags>
1010
<PackageProjectUrl>https://github.com/TestableIO/System.IO.Abstractions</PackageProjectUrl>
1111
<PackageLicenseExpression>MIT</PackageLicenseExpression>
1212
<PackageReadmeFile>README.md</PackageReadmeFile>
1313
<DefineConstants Condition="'$(TargetFramework)' != 'net462'">$(DefineConstants);FEATURE_FILE_SYSTEM_ACL_EXTENSIONS</DefineConstants>
14-
<DefineConstants Condition="'$(TargetFramework)' == 'net8.0' OR '$(TargetFramework)' == 'net7.0' OR '$(TargetFramework)' == 'net6.0' OR '$(TargetFramework)' == 'netstandard2.1'">$(DefineConstants);FEATURE_ASYNC_FILE;FEATURE_ENUMERATION_OPTIONS;FEATURE_ADVANCED_PATH_OPERATIONS;FEATURE_PATH_JOIN_WITH_SPAN;FEATURE_SPAN</DefineConstants>
15-
<DefineConstants Condition="'$(TargetFramework)' == 'net8.0' OR '$(TargetFramework)' == 'net7.0' OR '$(TargetFramework)' == 'net6.0'">$(DefineConstants);FEATURE_FILE_MOVE_WITH_OVERWRITE;FEATURE_SUPPORTED_OS_ATTRIBUTE;FEATURE_FILE_SYSTEM_WATCHER_FILTERS;FEATURE_ENDS_IN_DIRECTORY_SEPARATOR;FEATURE_PATH_JOIN_WITH_PARAMS;FEATURE_PATH_JOIN_WITH_FOUR_PATHS;FEATURE_FILE_SYSTEM_INFO_LINK_TARGET;FEATURE_CREATE_SYMBOLIC_LINK;FEATURE_FILESTREAM_OPTIONS</DefineConstants>
16-
<DefineConstants Condition="'$(TargetFramework)' == 'net8.0' OR '$(TargetFramework)' == 'net7.0'">$(DefineConstants);FEATURE_PATH_EXISTS;FEATURE_FILE_SYSTEM_WATCHER_WAIT_WITH_TIMESPAN;FEATURE_FILE_ATTRIBUTES_VIA_HANDLE;FEATURE_CREATE_TEMP_SUBDIRECTORY;FEATURE_READ_LINES_ASYNC;FEATURE_UNIX_FILE_MODE</DefineConstants>
14+
<DefineConstants Condition="'$(TargetFramework)' == 'net9.0' OR '$(TargetFramework)' == 'net8.0' OR '$(TargetFramework)' == 'net7.0' OR '$(TargetFramework)' == 'net6.0' OR '$(TargetFramework)' == 'netstandard2.1'">$(DefineConstants);FEATURE_ASYNC_FILE;FEATURE_ENUMERATION_OPTIONS;FEATURE_ADVANCED_PATH_OPERATIONS;FEATURE_PATH_JOIN_WITH_SPAN;FEATURE_SPAN</DefineConstants>
15+
<DefineConstants Condition="'$(TargetFramework)' == 'net9.0' OR '$(TargetFramework)' == 'net8.0' OR '$(TargetFramework)' == 'net7.0' OR '$(TargetFramework)' == 'net6.0'">$(DefineConstants);FEATURE_FILE_MOVE_WITH_OVERWRITE;FEATURE_SUPPORTED_OS_ATTRIBUTE;FEATURE_FILE_SYSTEM_WATCHER_FILTERS;FEATURE_ENDS_IN_DIRECTORY_SEPARATOR;FEATURE_PATH_JOIN_WITH_PARAMS;FEATURE_PATH_JOIN_WITH_FOUR_PATHS;FEATURE_FILE_SYSTEM_INFO_LINK_TARGET;FEATURE_CREATE_SYMBOLIC_LINK;FEATURE_FILESTREAM_OPTIONS</DefineConstants>
16+
<DefineConstants Condition="'$(TargetFramework)' == 'net9.0' OR '$(TargetFramework)' == 'net8.0' OR '$(TargetFramework)' == 'net7.0'">$(DefineConstants);FEATURE_PATH_EXISTS;FEATURE_FILE_SYSTEM_WATCHER_WAIT_WITH_TIMESPAN;FEATURE_FILE_ATTRIBUTES_VIA_HANDLE;FEATURE_CREATE_TEMP_SUBDIRECTORY;FEATURE_READ_LINES_ASYNC;FEATURE_UNIX_FILE_MODE</DefineConstants>
1717
<DefineConstants>$(DefineConstants);FEATURE_SERIALIZABLE</DefineConstants>
1818
</PropertyGroup>
1919
<ItemGroup>

global.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"sdk": {
3-
"version": "8.0.405",
3+
"version": "9.0.102",
44
"rollForward": "latestMinor"
55
}
66
}

src/System.IO.Abstractions.TestingHelpers/System.IO.Abstractions.TestingHelpers.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<AssemblyName>System.IO.Abstractions.TestingHelpers</AssemblyName>
44
<RootNamespace>System.IO.Abstractions.TestingHelpers</RootNamespace>
55
<Description>A set of pre-built mocks to help when testing file system interactions.</Description>
6-
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
6+
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
77
<PackageIcon>icon_256x256.png</PackageIcon>
88
</PropertyGroup>
99
<ItemGroup>

src/TestableIO.System.IO.Abstractions.TestingHelpers/MockFileStream.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ private void InternalFlush()
291291
Seek(0, SeekOrigin.Begin);
292292
/* .. read everything out */
293293
var data = new byte[Length];
294-
Read(data, 0, (int)Length);
294+
_ = Read(data, 0, (int)Length);
295295
/* restore to original position */
296296
Seek(position, SeekOrigin.Begin);
297297
/* .. put it in the mock system */

src/TestableIO.System.IO.Abstractions.TestingHelpers/TestableIO.System.IO.Abstractions.TestingHelpers.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<AssemblyName>TestableIO.System.IO.Abstractions.TestingHelpers</AssemblyName>
44
<RootNamespace>System.IO.Abstractions.TestingHelpers</RootNamespace>
55
<Description>A set of pre-built mocks to help when testing file system interactions.</Description>
6-
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
6+
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
77
<PackageIcon>icon_256x256.png</PackageIcon>
88
</PropertyGroup>
99
<ItemGroup>

src/TestableIO.System.IO.Abstractions.Wrappers/TestableIO.System.IO.Abstractions.Wrappers.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<AssemblyName>TestableIO.System.IO.Abstractions.Wrappers</AssemblyName>
44
<RootNamespace>System.IO.Abstractions</RootNamespace>
55
<Description>A set of abstractions to help make file system interactions testable.</Description>
6-
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
6+
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
77
<PackageIcon>icon_256x256.png</PackageIcon>
88
</PropertyGroup>
99
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.1' OR '$(TargetFramework)' == 'netstandard2.0'">

src/TestableIO.System.IO.Abstractions/TestableIO.System.IO.Abstractions.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<AssemblyName>TestableIO.System.IO.Abstractions</AssemblyName>
44
<RootNamespace>System.IO.Abstractions</RootNamespace>
55
<Description>A set of abstractions to help make file system interactions testable.</Description>
6-
<TargetFrameworks>net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
6+
<TargetFrameworks>net9.0;net8.0;net7.0;net6.0;netstandard2.1;netstandard2.0;net462</TargetFrameworks>
77
<PackageIcon>icon_256x256.png</PackageIcon>
88
<Nullable>enable</Nullable>
99
<LangVersion>preview</LangVersion>

tests/TestableIO.System.IO.Abstractions.TestingHelpers.Tests/MockFileSystemSerializationTests.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#if !NET9_0_OR_GREATER
12
namespace System.IO.Abstractions.TestingHelpers.Tests
23
{
34
using NUnit.Framework;
@@ -38,3 +39,4 @@ public void SerializationBytes()
3839
}
3940
}
4041
}
42+
#endif

tests/TestableIO.System.IO.Abstractions.TestingHelpers.Tests/MockFileSystemTests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,8 @@ public void MockFileSystem_AddDirectory_ShouldExist()
162162

163163
Assert.That(path.Exists, Is.True);
164164
}
165-
165+
166+
#if !NET9_0_OR_GREATER
166167
[Test]
167168
public void MockFileSystem_ByDefault_IsSerializable()
168169
{
@@ -182,6 +183,7 @@ public void MockFileSystem_ByDefault_IsSerializable()
182183

183184
Assert.That(memoryStream.Length > 0, "Length didn't increase after serialization task.");
184185
}
186+
#endif
185187

186188
[Test]
187189
public void MockFileSystem_AddDirectory_ShouldCreateDirectory()

tests/TestableIO.System.IO.Abstractions.TestingHelpers.Tests/MockFileTests.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -547,7 +547,8 @@ public void MockFile_AppendText_CreatesNewFileForAppendToNonExistingFile()
547547
Assert.That(file.TextContents, Is.EqualTo("New too!"));
548548
Assert.That(filesystem.FileExists(filepath));
549549
}
550-
550+
551+
#if !NET9_0_OR_GREATER
551552
[Test]
552553
public void Serializable_works()
553554
{
@@ -565,7 +566,9 @@ public void Serializable_works()
565566
//Assert
566567
Assert.Pass();
567568
}
568-
569+
#endif
570+
571+
#if !NET9_0_OR_GREATER
569572
[Test]
570573
public void Serializable_can_deserialize()
571574
{
@@ -588,6 +591,7 @@ public void Serializable_can_deserialize()
588591
//Assert
589592
Assert.That(deserialized.TextContents, Is.EqualTo(textContentStr));
590593
}
594+
#endif
591595

592596
[Test]
593597
public void MockFile_Encrypt_ShouldSetEncryptedAttribute()

0 commit comments

Comments
 (0)