Rework cache handling.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2022-10-08 13:42:30 +02:00
parent a140dcf781
commit cc2468c1d0
51 changed files with 412 additions and 150 deletions

View File

@@ -26,10 +26,14 @@ namespace PkmnLibRSharpTests.StaticData
using var ability = new Ability("", "",
new EffectParameter[] { new(100), new(false), new("foobar"), new(true) });
Assert.AreEqual(4, ability.ParameterLength);
Assert.AreEqual(100, ability.GetParameter(0).Data);
Assert.AreEqual(false, ability.GetParameter(1).Data);
Assert.AreEqual("foobar", ability.GetParameter(2).Data);
Assert.AreEqual(true, ability.GetParameter(3).Data);
using var p1 = ability.GetParameter(0);
Assert.AreEqual(100, p1.Data);
using var p2 = ability.GetParameter(1);
Assert.AreEqual(false, p2.Data);
using var p3 = ability.GetParameter(2);
Assert.AreEqual("foobar", p3.Data);
using var p4 = ability.GetParameter(3);
Assert.AreEqual(true, p4.Data);
}
}
}

View File

@@ -8,30 +8,27 @@ namespace PkmnLibRSharpTests.StaticData
[Test]
public void CreateAndDropLookupGrowthRate()
{
var growthRate = new LookupGrowthRate(new uint[] { 0, 1, 5, 10, 20, 100, 200, 500 });
growthRate.Dispose();
using var growthRate = new LookupGrowthRate(new uint[] { 0, 1, 5, 10, 20, 100, 200, 500 });
}
[Test]
public void LookupGrowthRateCalculateLevel()
{
var growthRate = new LookupGrowthRate(new uint[] { 0, 1, 5, 10, 20, 100, 200, 500 });
using var growthRate = new LookupGrowthRate(new uint[] { 0, 1, 5, 10, 20, 100, 200, 500 });
Assert.AreEqual(1, growthRate.CalculateLevel(0));
Assert.AreEqual(2, growthRate.CalculateLevel(1));
Assert.AreEqual(2, growthRate.CalculateLevel(2));
Assert.AreEqual(3, growthRate.CalculateLevel(5));
growthRate.Dispose();
}
[Test]
public void LookupGrowthRateCalculateExperience()
{
var growthRate = new LookupGrowthRate(new uint[] { 0, 1, 5, 10, 20, 100, 200, 500 });
using var growthRate = new LookupGrowthRate(new uint[] { 0, 1, 5, 10, 20, 100, 200, 500 });
Assert.AreEqual(0, growthRate.CalculateExperience(1));
Assert.AreEqual(1, growthRate.CalculateExperience(2));
Assert.AreEqual(5, growthRate.CalculateExperience(3));
Assert.AreEqual(10, growthRate.CalculateExperience(4));
growthRate.Dispose();
}
}

View File

@@ -29,8 +29,10 @@ namespace PkmnLibRSharpTests.StaticData.Libraries
using var nature1 = new Nature(Statistic.Attack, Statistic.Defense);
library.LoadNature("foo", nature1);
Assert.That(library.TryGetNature("foo", out var n));
Assert.AreEqual(Statistic.Attack, n.IncreasedStat);
using (var n = library.TryGetNature("foo"))
{
Assert.AreEqual(Statistic.Attack, n.Value!.IncreasedStat);
}
}
[Test]
@@ -39,12 +41,17 @@ namespace PkmnLibRSharpTests.StaticData.Libraries
using var library = new NatureLibrary(0);
using var nature1 = new Nature(Statistic.Attack, Statistic.Defense);
library.LoadNature("foo", nature1);
Assert.That(library.TryGetNature("foo", out var n));
Assert.AreEqual(Statistic.Attack, n.IncreasedStat);
Assert.That(library.TryGetNature("foo", out n));
Assert.AreEqual(Statistic.Attack, n.IncreasedStat);
using (var n = library.TryGetNature("foo"))
{
Assert.That(n.HasValue);
Assert.AreEqual(Statistic.Attack, n.Value!.IncreasedStat);
}
using (var n = library.TryGetNature("foo"))
{
Assert.That(n.HasValue);
Assert.AreEqual(Statistic.Attack, n.Value!.IncreasedStat);
}
}
[Test]
@@ -52,8 +59,9 @@ namespace PkmnLibRSharpTests.StaticData.Libraries
{
using var library = new NatureLibrary(0);
using var nature1 = new Nature(Statistic.Attack, Statistic.Defense);
Assert.False(library.TryGetNature("foo", out _));
using var n = library.TryGetNature("foo");
Assert.False(n.HasValue);
}
[Test]
@@ -63,8 +71,10 @@ namespace PkmnLibRSharpTests.StaticData.Libraries
using var nature1 = new Nature(Statistic.Attack, Statistic.Defense);
library.LoadNature("foo", nature1);
Assert.That(library.TryGetNature("foo", out var n));
Assert.AreEqual("foo", library.GetNatureName(n));
using (var n = library.TryGetNature("foo"))
{
Assert.AreEqual("foo", library.GetNatureName(n));
}
}
}