Skip to content

Commit 5fc77da

Browse files
committed
- Upgrade to .Net 9.0
1 parent 5bb8216 commit 5fc77da

File tree

7 files changed

+52
-49
lines changed

7 files changed

+52
-49
lines changed

README.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
1-
# <img src="https://github.com/NinjaRocks/FileUtil.Core/blob/master/ninja-icon-16.png" alt="ninja" style="width:30px;"/> FileUtil v3.0.0
2-
[![NuGet version](https://badge.fury.io/nu/FixedWidth.FileParser.svg)](https://badge.fury.io/nu/FixedWidth.FileParser)
3-
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/CodeShayk/FileUtil.Core/blob/master/LICENSE.md)
1+
# <img src="https://github.com/CodeShayk/FileUtil.Core/blob/master/Images/ninja-icon-16.png" alt="ninja" style="width:30px;"/> FileUtil.Core v4.0.0
2+
[![NuGet version](https://badge.fury.io/nu/FileUtil.Core.svg)](https://badge.fury.io/nu/FileUtil.Core) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/CodeShayk/FileUtil.Core/blob/master/LICENSE.md)
43
[![Master-Build](https://github.com/CodeShayk/FileUtil.Core/actions/workflows/Master-Build.yml/badge.svg)](https://github.com/CodeShayk/FileUtil.Core/actions/workflows/Master-Build.yml)
54
[![GitHub Release](https://img.shields.io/github/v/release/CodeShayk/FileUtil.Core?logo=github&sort=semver)](https://github.com/CodeShayk/FileUtil.Core/releases/latest)
65
[![Master-CodeQL](https://github.com/CodeShayk/FileUtil.Core/actions/workflows/Master-CodeQL.yml/badge.svg)](https://github.com/CodeShayk/FileUtil.Core/actions/workflows/Master-CodeQL.yml)
76
[![.Net 8.0](https://img.shields.io/badge/.Net-8.0-blue)](https://dotnet.microsoft.com/en-us/download/dotnet/8.0)
87

9-
10-
#### .Net Library to read from fixed width or delimiter separated file using strongly typed objects.
118
-------------
9+
#### .Net Library to read from fixed width or delimiter separated file using strongly typed objects.
10+
1211

1312
**Fixed Width or Delimiter Separated File**
1413
------------------------------------------------------------------------
@@ -47,7 +46,7 @@ NuGet\Install-Package FixedWidth.FileParser
4746

4847
### ii. Developer Guide
4948

50-
Please read [Developer Guide](https://github.com/CodeShayk/FileUtil.Core/blob/master/DeveloperGuide.md) for details on how to implement ApiAggregator in your project.
49+
Please read [Developer Guide](https://github.com/CodeShayk/FileUtil.Core/blob/master/DeveloperGuide.md) for details on how to implement FileUtil.Core in your project.
5150

5251
## Support
5352

@@ -58,9 +57,10 @@ If you are having problems, please let me know by [raising a new issue](https://
5857
This project is licensed with the [MIT license](LICENSE).
5958

6059
## Version History
61-
The main branch is now on .NET 8.0. The following previous versions are available:
60+
The main branch is now on .NET 9.0. The following previous versions are available:
6261
| Version | Release Notes |
6362
| -------- | --------|
63+
| [`v4.0.0`](https://github.com/CodeShayk/FileUtil.Core/tree/v4.0.0) | [Notes](https://github.com/CodeShayk/FileUtil.Core/releases/tag/v4.0.0) |
6464
| [`v3.0.0`](https://github.com/CodeShayk/FileUtil.Core/tree/v3.0.0) | [Notes](https://github.com/CodeShayk/FileUtil.Core/releases/tag/v3.0.0) |
6565
| [`v2.0.0`](https://github.com/CodeShayk/FileUtil.Core/tree/v2.0.0) | [Notes](https://github.com/CodeShayk/FileUtil.Core/releases/tag/v2.0.0) |
6666
| [`v1.0.0`](https://github.com/CodeShayk/FileUtil.Core/tree/v1.0.0) | [Notes](https://github.com/CodeShayk/FileUtil.Core/releases/tag/v1.0.0) |

src/FileUtil/FileUtil.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFramework>net8.0</TargetFramework>
3+
<TargetFramework>net9.0</TargetFramework>
44
<RepositoryType>Public</RepositoryType>
55
<RepositoryUrl>https://github.com/CodeShayk/FileUtil.Core</RepositoryUrl>
66
<PackageTags>csv tsv fixed-width delimiter-file delimiter file-parser file parser</PackageTags>

test/FileUtil.Tests/Engine/MultiDelimited/EngineFixture.cs

+10-11
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FileUtil.Configuration;
1+
using FileUtil.Configuration;
22
using FileUtil.Provider;
33
using Moq;
44
using NUnit.Framework;
@@ -31,7 +31,7 @@ public void Setup()
3131
[Test]
3232
public void TestGetFilesForNoFileFromProviderShouldReturnEmptyCollection()
3333
{
34-
Assert.IsEmpty(engine.GetFiles<HeaderLine, DataLine, FooterLine>());
34+
Assert.That(engine.GetFiles<HeaderLine, DataLine, FooterLine>(), Is.Empty);
3535
}
3636

3737
[Test]
@@ -50,38 +50,37 @@ public void TestGetFilesForFileReceivedFromProviderShouldReturnEmptyCollection()
5050

5151
var parsedfiles = engine.GetFiles<HeaderLine, DataLine, FooterLine>();
5252

53-
Assert.IsNotEmpty(parsedfiles);
53+
Assert.That(parsedfiles, Is.Not.Empty);
5454
Assert.That(parsedfiles[0].FileMeta.FileName, Is.EqualTo(fileMeta.FileName));
5555
Assert.That(parsedfiles[0].FileMeta.FilePath, Is.EqualTo(fileMeta.FilePath));
5656
Assert.That(parsedfiles[0].FileMeta.FileSize, Is.EqualTo(fileMeta.FileSize));
5757
Assert.That(parsedfiles[0].FileMeta.Lines, Is.EqualTo(fileMeta.Lines));
5858

59-
Assert.IsAssignableFrom<HeaderLine>(parsedfiles[0].Header);
59+
Assert.That(parsedfiles[0].Header, Is.AssignableFrom<HeaderLine>());
6060

6161
Assert.That(parsedfiles[0].Header.Index, Is.EqualTo(0));
6262
Assert.That(parsedfiles[0].Header.Type, Is.EqualTo(LineType.Header));
63-
Assert.IsEmpty(parsedfiles[0].Header.Errors);
63+
Assert.That(parsedfiles[0].Header.Errors, Is.Empty);
6464
Assert.That(parsedfiles[0].Header.Date, Is.EqualTo(date));
6565
Assert.That(parsedfiles[0].Header.Name, Is.EqualTo("Employee Status"));
6666

67-
68-
Assert.IsAssignableFrom<DataLine>(parsedfiles[0].Data[0]);
67+
Assert.That(parsedfiles[0].Data[0], Is.AssignableFrom<DataLine>());
6968

7069
Assert.That(parsedfiles[0].Data[0].Index, Is.EqualTo(0));
7170
Assert.That(parsedfiles[0].Data[0].Type, Is.EqualTo(LineType.Data));
72-
Assert.IsEmpty(parsedfiles[0].Data[0].Errors);
71+
Assert.That(parsedfiles[0].Data[0].Errors, Is.Empty);
7372

7473
Assert.That(parsedfiles[0].Data[0].Employee, Is.EqualTo("John Walsh"));
7574
Assert.That(parsedfiles[0].Data[0].Reference, Is.EqualTo("456RT4"));
7675
Assert.That(parsedfiles[0].Data[0].InService, Is.EqualTo(true));
7776

78-
Assert.IsAssignableFrom<FooterLine>(parsedfiles[0].Footer);
77+
Assert.That(parsedfiles[0].Footer, Is.AssignableFrom<FooterLine>());
7978

8079
Assert.That(parsedfiles[0].Footer.Index, Is.EqualTo(0));
8180
Assert.That(parsedfiles[0].Footer.Type, Is.EqualTo(LineType.Footer));
82-
Assert.IsEmpty(parsedfiles[0].Footer.Errors);
81+
Assert.That(parsedfiles[0].Footer.Errors, Is.Empty);
8382

8483
Assert.That(parsedfiles[0].Footer.TotalRecords, Is.EqualTo(1));
8584
}
8685
}
87-
}
86+
}

test/FileUtil.Tests/Engine/SingleDelimited/EngineFixture.cs

+8-10
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using FileUtil.Configuration;
1+
using FileUtil.Configuration;
22
using FileUtil.Provider;
33
using Moq;
44
using NUnit.Framework;
@@ -27,7 +27,7 @@ public void Setup()
2727
[Test]
2828
public void TestGetFilesForNoFileFromProviderShouldReturnEmptyCollection()
2929
{
30-
Assert.IsEmpty(engine.GetFiles<SingleLine>());
30+
Assert.That(engine.GetFiles<SingleLine>(), Is.Empty);
3131
}
3232

3333
[Test]
@@ -45,30 +45,28 @@ public void TestGetFilesForFileReceivedFromProviderShouldReturnEmptyCollection()
4545

4646
var parsedfiles = engine.GetFiles<SingleLine>();
4747

48-
Assert.IsNotEmpty(parsedfiles);
48+
Assert.That(parsedfiles, Is.Not.Empty);
4949
Assert.That(parsedfiles[0].FileMeta.FileName, Is.EqualTo(fileMeta.FileName));
5050
Assert.That(parsedfiles[0].FileMeta.FilePath, Is.EqualTo(fileMeta.FilePath));
5151
Assert.That(parsedfiles[0].FileMeta.FileSize, Is.EqualTo(fileMeta.FileSize));
5252
Assert.That(parsedfiles[0].FileMeta.Lines, Is.EqualTo(fileMeta.Lines));
5353

54-
55-
Assert.IsAssignableFrom<SingleLine>(parsedfiles[0].Data[0]);
56-
Assert.IsAssignableFrom<SingleLine>(parsedfiles[0].Data[1]);
54+
Assert.That(parsedfiles[0].Data[0], Is.AssignableFrom<SingleLine>());
55+
Assert.That(parsedfiles[0].Data[1], Is.AssignableFrom<SingleLine>());
5756

5857
Assert.That(parsedfiles[0].Data[0].Index, Is.EqualTo(0));
5958
Assert.That(parsedfiles[0].Data[0].Type, Is.EqualTo(LineType.Data));
60-
Assert.IsEmpty(parsedfiles[0].Data[0].Errors);
59+
Assert.That(parsedfiles[0].Data[0].Errors, Is.Empty);
6160

6261
Assert.That(parsedfiles[0].Data[0].Name, Is.EqualTo("Jack Marias"));
6362
Assert.That(parsedfiles[0].Data[0].IsMember, Is.EqualTo(false));
6463

65-
6664
Assert.That(parsedfiles[0].Data[1].Index, Is.EqualTo(1));
6765
Assert.That(parsedfiles[0].Data[1].Type, Is.EqualTo(LineType.Data));
68-
Assert.IsEmpty(parsedfiles[0].Data[0].Errors);
66+
Assert.That(parsedfiles[0].Data[0].Errors, Is.Empty);
6967

7068
Assert.That(parsedfiles[0].Data[1].Name, Is.EqualTo("Samuel Dias"));
7169
Assert.That(parsedfiles[0].Data[1].IsMember, Is.EqualTo(true));
7270
}
7371
}
74-
}
72+
}

test/FileUtil.Tests/FileUtil.Tests.csproj

+13-7
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>net8.0</TargetFramework>
4+
<TargetFramework>net9.0</TargetFramework>
55
<ImplicitUsings>enable</ImplicitUsings>
66
<Nullable>enable</Nullable>
77

@@ -13,12 +13,18 @@
1313
</ItemGroup>
1414

1515
<ItemGroup>
16-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.3.2" />
17-
<PackageReference Include="Moq" Version="4.18.3" />
18-
<PackageReference Include="NUnit" Version="3.13.3" />
19-
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
20-
<PackageReference Include="NUnit.Analyzers" Version="3.3.0" />
21-
<PackageReference Include="coverlet.collector" Version="3.1.2" />
16+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
17+
<PackageReference Include="Moq" Version="4.20.72" />
18+
<PackageReference Include="NUnit" Version="4.2.2" />
19+
<PackageReference Include="NUnit3TestAdapter" Version="4.6.0" />
20+
<PackageReference Include="NUnit.Analyzers" Version="4.4.0">
21+
<PrivateAssets>all</PrivateAssets>
22+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
23+
</PackageReference>
24+
<PackageReference Include="coverlet.collector" Version="6.0.2">
25+
<PrivateAssets>all</PrivateAssets>
26+
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
27+
</PackageReference>
2228
</ItemGroup>
2329

2430
<ItemGroup>

test/FileUtil.Tests/Parser/LineParserFixture.cs

+9-9
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ public void Setup()
2626
[Test]
2727
public void TestParseForNullInputShouldReturnEmptyArray()
2828
{
29-
Assert.IsEmpty(parser.Parse<TestLine>(null));
30-
Assert.IsEmpty(parser.Parse<TestLine>(null, LineType.Data));
29+
Assert.That(parser.Parse<TestLine>(null), Is.Empty);
30+
Assert.That(parser.Parse<TestLine>(null, LineType.Data), Is.Empty);
3131
}
3232

3333
[Test]
@@ -46,12 +46,12 @@ public void TestParseWithLineHeaderInputShouldReturnCorrectlyParsedArray()
4646
Assert.That(parsed[0].Name, Is.EqualTo("Bob Marley"));
4747
Assert.That(parsed[0].IsMember, Is.EqualTo(true));
4848
Assert.That(parsed[0].Type, Is.EqualTo(LineType.Data));
49-
Assert.IsEmpty(parsed[0].Errors);
49+
Assert.That(parsed[0].Errors, Is.Empty);
5050

5151
Assert.That(parsed[1].Name, Is.EqualTo("John Walsh"));
5252
Assert.That(parsed[1].IsMember, Is.EqualTo(false));
5353
Assert.That(parsed[1].Type, Is.EqualTo(LineType.Data));
54-
Assert.IsEmpty(parsed[1].Errors);
54+
Assert.That(parsed[1].Errors, Is.Empty);
5555
}
5656

5757
[Test]
@@ -69,12 +69,12 @@ public void TestParseWithNoLineHeaderInputShouldReturnCorrectlyParsedArray()
6969
Assert.That(prsed[0].Name, Is.EqualTo("Bob Marley"));
7070
Assert.That(prsed[0].IsMember, Is.EqualTo(true));
7171
Assert.That(prsed[0].Type, Is.EqualTo(LineType.Data));
72-
Assert.IsEmpty(prsed[0].Errors);
72+
Assert.That(prsed[0].Errors, Is.Empty);
7373

7474
Assert.That(prsed[1].Name, Is.EqualTo("John Walsh"));
7575
Assert.That(prsed[1].IsMember, Is.EqualTo(false));
7676
Assert.That(prsed[1].Type, Is.EqualTo(LineType.Data));
77-
Assert.IsEmpty(prsed[1].Errors);
77+
Assert.That(prsed[1].Errors, Is.Empty);
7878
}
7979

8080
[TestCase("hbtrb", true)]
@@ -90,19 +90,19 @@ public void TestParseForInvalidInputShouldReturnError(string line, bool hasLineT
9090
? parser.Parse<TestLine>(new[] { line })
9191
: parser.Parse<TestLine>(new[] { line }, LineType.Header);
9292

93-
Assert.IsNotEmpty(result[0].Errors);
93+
Assert.That(result[0].Errors, Is.Not.Empty);
9494
}
9595

9696
[Test]
9797
public void TestParseForInvalidFileLineWithNoColumnAttributesShouldReturnError()
9898
{
9999
var result = parser.Parse<InvalidTestLine>(new[] { "D|edndx|medmd" }, LineType.Data);
100100

101-
Assert.IsNotEmpty(result[0].Errors);
101+
Assert.That(result[0].Errors, Is.Not.Empty);
102102

103103
result = parser.Parse<InvalidTestLine>(new[] { "edndx|medmd" });
104104

105-
Assert.IsNotEmpty(result[0].Errors);
105+
Assert.That(result[0].Errors, Is.Not.Empty);
106106
}
107107
}
108108
}

test/FileUtil.Tests/Provider/DefaultProviderFixture.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public void TestGetFilesForNoFilesShouldReturnEmptyFileCollection()
2828
fileHelper.Setup(x => x.GetPathLists(It.IsAny<string>(), It.IsAny<string>()))
2929
.Returns(Enumerable.Empty<string>().ToArray());
3030

31-
Assert.IsEmpty(provider.GetFiles());
31+
Assert.That(provider.GetFiles(), Is.Empty);
3232
}
3333

3434
[Test]
@@ -39,7 +39,7 @@ public void TestGetFilesForFileWhichDoesNotExistsShouldReturnEmptyFileCollection
3939

4040
fileHelper.Setup(x => x.FileExists("path")).Returns(false);
4141

42-
Assert.IsEmpty(provider.GetFiles());
42+
Assert.That(provider.GetFiles(), Is.Empty);
4343
}
4444

4545
[Test]
@@ -51,7 +51,7 @@ public void TestGetFilesForFileWhichExistsAndWithNoArchiveSettingShouldReturnFil
5151
fileHelper.Setup(x => x.FileExists(filePath)).Returns(true);
5252
fileHelper.Setup(x => x.ReadToLines(filePath)).Returns(new[] { "xyz, abc" });
5353

54-
Assert.IsNotEmpty(provider.GetFiles());
54+
Assert.That(provider.GetFiles(), Is.Not.Empty);
5555
fileHelper.Verify(x => x.TryDeleteFile(It.IsAny<FileInfo>()), Times.Exactly(1));
5656
fileHelper.Verify(x => x.TryMoveFile(It.IsAny<FileInfo>(), It.IsAny<string>()), Times.Never());
5757
fileHelper.Verify(x => x.EnsureFolderExist(It.IsAny<string>()), Times.Never());
@@ -74,7 +74,7 @@ public void TestGetFilesForFileWhichExistsAndWithArchiveSettingShouldReturnFileC
7474
fileHelper.Setup(x => x.FileExists(filePath)).Returns(true);
7575
fileHelper.Setup(x => x.ReadToLines(filePath)).Returns(new[] { "xyz, abc" });
7676

77-
Assert.IsNotEmpty(provider.GetFiles());
77+
Assert.That(provider.GetFiles(), Is.Not.Empty);
7878
fileHelper.Verify(x => x.TryDeleteFile(It.IsAny<FileInfo>()), Times.Exactly(2));
7979
fileHelper.Verify(x => x.TryMoveFile(It.IsAny<FileInfo>(), It.IsAny<string>()), Times.Exactly(1));
8080
fileHelper.Verify(x => x.EnsureFolderExist(It.IsAny<string>()), Times.Exactly(1));

0 commit comments

Comments
 (0)