mirror of
https://github.com/ppy/osu
synced 2024-12-25 16:22:23 +00:00
Add rate-change UR tests
This commit is contained in:
parent
d123ba5bce
commit
8c36604e58
@ -42,5 +42,37 @@ namespace osu.Game.Tests.NonVisual.Ranking
|
||||
|
||||
Assert.AreEqual(0, unstableRate.Value);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestStaticRateChange()
|
||||
{
|
||||
var events = new[]
|
||||
{
|
||||
new HitEvent(-150, 1.5, HitResult.Great, new HitObject(), null, null),
|
||||
new HitEvent(-150, 1.5, HitResult.Great, new HitObject(), null, null),
|
||||
new HitEvent(150, 1.5, HitResult.Great, new HitObject(), null, null),
|
||||
new HitEvent(150, 1.5, HitResult.Great, new HitObject(), null, null),
|
||||
};
|
||||
|
||||
var unstableRate = new UnstableRate(events);
|
||||
|
||||
Assert.AreEqual(10 * 100, unstableRate.Value);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDynamicRateChange()
|
||||
{
|
||||
var events = new[]
|
||||
{
|
||||
new HitEvent(-50, 0.5, HitResult.Great, new HitObject(), null, null),
|
||||
new HitEvent(75, 0.75, HitResult.Great, new HitObject(), null, null),
|
||||
new HitEvent(-100, 1.0, HitResult.Great, new HitObject(), null, null),
|
||||
new HitEvent(125, 1.25, HitResult.Great, new HitObject(), null, null),
|
||||
};
|
||||
|
||||
var unstableRate = new UnstableRate(events);
|
||||
|
||||
Assert.AreEqual(10 * 100, unstableRate.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
|
||||
#nullable disable
|
||||
|
||||
using System;
|
||||
using NUnit.Framework;
|
||||
using osu.Framework.Allocation;
|
||||
using osu.Framework.Graphics;
|
||||
@ -81,6 +82,27 @@ namespace osu.Game.Tests.Visual.Gameplay
|
||||
AddUntilStep("UR = 250", () => counter.Current.Value == 250.0);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestStaticRateChange()
|
||||
{
|
||||
AddStep("Create Display", recreateDisplay);
|
||||
|
||||
AddRepeatStep("Set UR to 250 at 1.5x", () => applyJudgement(25, true, 1.5), 4);
|
||||
|
||||
AddUntilStep("UR = 250/1.5", () => counter.Current.Value == Math.Round(250.0 / 1.5));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestDynamicRateChange()
|
||||
{
|
||||
AddStep("Create Display", recreateDisplay);
|
||||
|
||||
AddRepeatStep("Set UR to 100 at 1.0x", () => applyJudgement(10, true, 1.0), 4);
|
||||
AddRepeatStep("Bring UR to 100 at 1.5x", () => applyJudgement(15, true, 1.5), 4);
|
||||
|
||||
AddUntilStep("UR = 100", () => counter.Current.Value == 100.0);
|
||||
}
|
||||
|
||||
private void recreateDisplay()
|
||||
{
|
||||
Clear();
|
||||
|
Loading…
Reference in New Issue
Block a user