mirror of https://github.com/ppy/osu
Crudely fix crashes when switching between `TestResultsWithPlayer` cases
In the visual test browser, if two `TestResultsWithPlayer` test cases
are ran consecutively, the second would die on `SoloStatisticsWatcher`
seeing duplicated online score IDs. This surfaced after
6ef39b87fe
, which changed
`TestResultsScreen` to inherit `SoloResultsScreen` rather than
`ResultsScreen`.
This is probably _not_ a very good fix, but I'm trying to be pragmatic
for now. `SoloStatisticsWatcher` should probably not live in
`OsuGameBase`.
This commit is contained in:
parent
6ef39b87fe
commit
4b06b6f34e
|
@ -69,6 +69,8 @@ public void TestScaling()
|
|||
}));
|
||||
}
|
||||
|
||||
private int onlineScoreID = 1;
|
||||
|
||||
[TestCase(1, ScoreRank.X)]
|
||||
[TestCase(0.9999, ScoreRank.S)]
|
||||
[TestCase(0.975, ScoreRank.S)]
|
||||
|
@ -81,14 +83,17 @@ public void TestResultsWithPlayer(double accuracy, ScoreRank rank)
|
|||
{
|
||||
TestResultsScreen screen = null;
|
||||
|
||||
var score = TestResources.CreateTestScoreInfo();
|
||||
loadResultsScreen(() =>
|
||||
{
|
||||
var score = TestResources.CreateTestScoreInfo();
|
||||
|
||||
score.OnlineID = 1234;
|
||||
score.HitEvents = TestSceneStatisticsPanel.CreatePositionDistributedHitEvents();
|
||||
score.Accuracy = accuracy;
|
||||
score.Rank = rank;
|
||||
score.OnlineID = onlineScoreID++;
|
||||
score.HitEvents = TestSceneStatisticsPanel.CreatePositionDistributedHitEvents();
|
||||
score.Accuracy = accuracy;
|
||||
score.Rank = rank;
|
||||
|
||||
loadResultsScreen(() => screen = createResultsScreen(score));
|
||||
return screen = createResultsScreen(score);
|
||||
});
|
||||
AddUntilStep("wait for loaded", () => screen.IsLoaded);
|
||||
AddAssert("retry overlay present", () => screen.RetryOverlay != null);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue