From 39b203375f9b59a957309d4c7c6ad29a05d52a6e Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Tue, 19 Feb 2019 13:58:05 +0900 Subject: [PATCH] Ensure variable isolation over multiple test runs --- .../TestCaseSliderInput.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/osu.Game.Rulesets.Osu.Tests/TestCaseSliderInput.cs b/osu.Game.Rulesets.Osu.Tests/TestCaseSliderInput.cs index 8217fe7750..39dc914406 100644 --- a/osu.Game.Rulesets.Osu.Tests/TestCaseSliderInput.cs +++ b/osu.Game.Rulesets.Osu.Tests/TestCaseSliderInput.cs @@ -308,6 +308,8 @@ namespace osu.Game.Rulesets.Osu.Tests private bool assertMidSliderJudgementFail() => judgementResults[judgementResults.Count - 2].Type == HitResult.Miss; + private ScoreAccessibleReplayPlayer currentPlayer; + private void performTest(List frames) { // Empty frame to be added as a workaround for first frame behavior. @@ -324,17 +326,23 @@ namespace osu.Game.Rulesets.Osu.Tests p.OnLoadComplete += _ => { - p.ScoreProcessor.NewJudgement += result => judgementResults.Add(result); - p.ScoreProcessor.AllJudged += () => { allJudgedFired = true; }; + p.ScoreProcessor.NewJudgement += result => + { + if (currentPlayer == p) judgementResults.Add(result); + }; + p.ScoreProcessor.AllJudged += () => + { + if (currentPlayer == p) allJudgedFired = true; + }; }; - AddStep("load player", () => LoadScreen(p)); - AddUntilStep(() => p.IsLoaded, "Wait until player is loaded"); - AddStep("reset counts", () => + AddStep("load player", () => { + LoadScreen(currentPlayer = p); allJudgedFired = false; judgementResults = new List(); }); + AddUntilStep(() => p.IsLoaded, "Wait until player is loaded"); AddUntilStep(() => allJudgedFired, "Wait for all judged"); }