Migrate to TUnit for unit tests

This commit is contained in:
2024-12-27 14:30:22 +01:00
parent 5b518df24a
commit 853d6dd1cb
19 changed files with 158 additions and 184 deletions

View File

@@ -5,44 +5,41 @@ namespace PkmnLib.Tests.Static;
public class StringKeyTests
{
private static IEnumerable StringKeyEqualityTestCases
public static IEnumerable<Func<(string, string, bool)>> StringKeyEqualityTestCases()
{
get
{
yield return new TestCaseData("test", "test").Returns(true);
yield return new TestCaseData("test", "test2").Returns(false);
yield return new TestCaseData("test2", "test2").Returns(true);
yield return new TestCaseData("Test", "test").Returns(true);
yield return new TestCaseData("TeSt", "tesT").Returns(true);
yield return new TestCaseData("TeSt", "tesv").Returns(false);
}
yield return () => ("test", "test", true);
yield return () => ("test", "test2", false);
yield return () => ("test2", "test2", true);
yield return () => ("Test", "test", true);
yield return () => ("TeSt", "tesT", true);
yield return () => ("TeSt", "tesv", false);
}
[Test]
[TestCaseSource(nameof(StringKeyEqualityTestCases))]
public bool StringKeyEqualityTest(string k1, string k2)
[MethodDataSource(nameof(StringKeyEqualityTestCases))]
public async Task StringKeyEqualityTest(string k1, string k2, bool expected)
{
var sk1 = new StringKey(k1);
var sk2 = new StringKey(k2);
return sk1 == sk2;
await Assert.That(sk1 == sk2).IsEqualTo(expected);
}
[Test]
[TestCaseSource(nameof(StringKeyEqualityTestCases))]
public bool HashCodeEqualityTest(string k1, string k2)
[MethodDataSource(nameof(StringKeyEqualityTestCases))]
public async Task HashCodeEqualityTest(string k1, string k2, bool expected)
{
var sk1 = new StringKey(k1);
var sk2 = new StringKey(k2);
return sk1.GetHashCode() == sk2.GetHashCode();
await Assert.That(sk1.GetHashCode() == sk2.GetHashCode()).IsEqualTo(expected);
}
[Test]
[TestCaseSource(nameof(StringKeyEqualityTestCases))]
public bool HashSetEqualityTest(string k1, string k2)
[MethodDataSource(nameof(StringKeyEqualityTestCases))]
public async Task HashSetEqualityTest(string k1, string k2, bool expected)
{
var sk1 = new StringKey(k1);
var sk2 = new StringKey(k2);
var hs = new HashSet<StringKey> { sk1 };
return hs.Contains(sk2);
await Assert.That(hs.Contains(sk2)).IsEqualTo(expected);
}
}