Skip to content

Commit a13c315

Browse files
rewrote CrossFrameworkSerializationTests as xUnit theory (#152)
1 parent 7f36823 commit a13c315

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

src/Hyperion.Tests/CrossFrameworkSerializationTests.cs

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
using System.IO;
1+
using System.Collections;
2+
using System.Collections.Generic;
3+
using System.IO;
4+
using System.Linq;
25
using Hyperion.Tests.Generator;
36
using Xunit;
47

@@ -15,22 +18,22 @@ public CrossFrameworkSerializationTests()
1518
_originalObject = CrossFrameworkInitializer.Init();
1619
}
1720

18-
[Fact]
19-
public void CanSerializeCrossFramework()
21+
public static IEnumerable<object[]> SerializationFiles()
2022
{
2123
const string defaultOutputPath = CrossFrameworkInitializer.DefaultOutputPath;
2224
var testFiles = Directory.GetFiles(defaultOutputPath, "*.tf");
25+
return testFiles.Select(x => new object[] { x });
26+
}
2327

24-
Assert.NotEmpty(testFiles);
25-
26-
foreach (string testFile in testFiles)
28+
[Theory]
29+
[MemberData(nameof(SerializationFiles))]
30+
public void CanSerializeCrossFramework(string fileName)
31+
{
32+
using (var fileStream = new FileStream(fileName, FileMode.Open))
2733
{
28-
using (var fileStream = new FileStream(testFile, FileMode.Open))
29-
{
30-
var crossFrameworkClass = _serializer.Deserialize<CrossFrameworkClass>(fileStream);
34+
var crossFrameworkClass = _serializer.Deserialize<CrossFrameworkClass>(fileStream);
3135

32-
Assert.Equal(_originalObject, crossFrameworkClass);
33-
}
36+
Assert.Equal(_originalObject, crossFrameworkClass);
3437
}
3538
}
3639
}

0 commit comments

Comments
 (0)